19.7. Variables « statiques » et « automatiques »

Icône de l'outil pédagogique Variables « statiques » et « automatiques »

Du point de vue de la localisation en mémoire, on voit apparaître deux types de variables :

- celles qui sont allouées par le compilateur dans la zone des données statiques (elles sont souvent qualifiées de statiques). Ce sont toutes les variables de fichier et les variables de bloc de classe statique. Elles ont une durée de vie permanente et sont initialisées à 0 par défaut.

- celles qui sont allouées en pile (elles sont alors dites automatiques). Ce sont les variables de bloc de classe automatique et les paramètres formels. Elles ont une durée de vie limitée à celle du bloc où elles sont définies et n'ont aucune initialisation par défaut.

Il existe des variables situées dans une troisième zone de la mémoire, appelée le tas. Ce sont les variables dynamiques. Elles sont utilisées pour l'allocation dynamique de la mémoire. Elles sont décrites dans le chapitre Pointeurs.