Allocazione automatica della memoriaLe variabili automatiche sono variabili locali in un blocco di istruzioni. Esse sono automaticamente allocate sullo stack quando si entra in quel blocco di codice; parallelamente, vengono distrutte quando si esce dal blocco stesso. Ad esempio, si consideri il seguente codice in linguaggio C: int main(void)
{
{
int a;
a = 10;
}
{
int b;
printf("b = %d\n", b);
}
}
Utilizzando il compilatore gcc, si otterrà come risultato: b = 10 perché la stessa locazione di memoria che era stata allocata per a viene poi utilizzata per allocare b, all'ingresso del secondo blocco. Le variabili automatiche hanno un valore indefinito quando sono dichiarate (in gergo si dice che sono sporche), perciò è buona abitudine inizializzarle con valori validi prima del loro utilizzo. Voci correlate |