static promenne v codevisionu

Miroslav Šinko sinkomiro@gmail.com
Čtvrtek Březen 5 13:05:38 CET 2009


To nie je pravda, dokonca norma ANSI C hovori o hodnotach
neinicializovanych premennych:

10 If an object that has automatic storage duration is not initialized
explicitly, its value is
indeterminate. If an object that has static storage duration is not
initialized explicitly,
then:
— if it has pointer type, it is initialized to a null pointer;
— if it has arithmetic type, it is initialized to (positive or unsigned) zero;
— if it is an aggregate, every member is initialized (recursively)
according to these rules;
— if it is a union, the first named member is initialized
(recursively) according to these
rules.

miro

2009/3/5 admin.mtech <admin.mtech@gmail.com>:
> pokial viem klucove slovo "static" vravi, ze nasledne deklarovana
> premenna bude mat priradene pamatove miesto aj po vyskoceni z funkcie.
> Cize sa z nej vlastne stane globalna premenna.
> To ale nenamena, ze po starte programu bude mat premenna definovanu hodnotu.
> Teoreticky by sa mala nastavit na 0. Prakticky ale treba vediet co s
> nou  (s jej pamatovym miestom) urobi cstartup.asm
> Pokial sa pouzije (u IAR-a) klucove slovo _no_init_, tak sa nebude
> nulovat po resete.
>
> Co vlastne od tej (tych) premennej potrebujete?
>
> -mt-
>



Další informace o konferenci Hw-list