static promenne v codevisionu
admin.mtech
admin.mtech@gmail.com
Čtvrtek Březen 5 12:58:48 CET 2009
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-
Luboš Melichar wrote / napísal(a):
> codevision 1.25.7a
>
> void Fce(void){
> static byte countCycle=0;
> static byte countCycle2=0;
>
> Vypis(countCycle);
> Vypis(countCycle2);
> }
>
> pri vypisu dostavam naprosto silene hodnoty, pokazdem resetu jine..
> jednou 52 a 47, po druhe 73, 47 atd...
> stack mam naddimenzovany..
>
> v cem ma codevision problem? reseni? asi nepouzivat static promenne..
> uz nekolikrat jsem je ale s uspechem pouzil, na problem jsem narazil
> az ted.
>
>
>
>
Další informace o konferenci Hw-list