variabile statica

ciao!

se si prepone la keyword "static" ad una variabile locale questa conserva i l valore tra le varie chiamate alla funzione; c'è modo però di inizializzarla ad un certo valore la prima volta che l a funzione viene chiamata? (vorrei evitare di usare una variabile a visibilità globale) uso il c30 di microchip

-ice-

Reply to
ice
Loading thread data ...

Il 08/11/2012 14:50, ice ha scritto:

valore tra le varie chiamate alla funzione;

funzione viene chiamata?

Se non prendo cantonate una variabile static è di fatto globale (cioè non viene allocata ad ogni chiamata di funzione) ma la sua visibilità è limitata all'ambito della dichiarazione.

Il compilatore dovrebbe iniziarlizzarla automaticamente (es. int a 0). Ma dovresti poter scrivere:

static int myVar = 3;

Marco

Reply to
Marco Trapanese

"Marco Trapanese" ha scritto nel messaggio news:k7gdli$qqt$ snipped-for-privacy@tdi.cu.mi.it...

io ho sempre visto che coì andava bene,ci possono essere eccezioni?

Reply to
blisca

Il 08/11/2012 15:45, blisca ha scritto:

Dovrebbe essere previsto dallo standard ma i compilatori per microcontroller non sempre aderiscono perfettamente e conviene sempre verificare che il proprio supporti una data funzionalità.

Ciao! Marco

Reply to
Marco Trapanese

Il giorno giovedì 8 novembre 2012 15:45:11 UTC+1, blisca ha scritto:

i?

anche io sapevo così; nel mio caso in effetti funzionava ma un bug sulle watches del debug non mi aggiornava il valore e stavo uscendo matto ;)

-ice-

Reply to
ice

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.