Portée des variables en C

Découvrez ce qu'est la portée et comment elle fonctionne en C

Lorsque vous définissez une variable dans unCprogramme, selon l'endroit où vous le déclarez, il aura un autreportée.

Cela signifie qu'il sera disponible dans certains endroits, mais pas dans d'autres.

La position détermine 2 types de variables:

  • variables globales
  • variables locales

Voici la différence: une variable déclarée à l'intérieur d'une fonction est une variable locale, comme ceci:

int main(void) {
  int age = 37;
}

Les variables locales ne sont accessibles qu'à partir de la fonction, et lorsque la fonction se termine, elles arrêtent leur existence. Ils sont effacés de la mémoire (à quelques exceptions près).

Une variable définie en dehors d'une fonction est une variable globale, comme dans cet exemple:

int age = 37;

int main(void) { /* … */ }

Les variables globales sont accessibles depuis n'importe quelle fonction du programme, et elles sont disponibles pour toute l'exécution du programme, jusqu'à sa fin.

J'ai mentionné que les variables locales ne sont plus disponibles après la fin de la fonction.

La raison en est que les variables locales sont déclarées sur leempiler, par défaut, sauf si vous les allouez explicitement sur le tas en utilisantpointeurs, mais vous devez ensuite gérer vous-même la mémoire.

Téléchargez mon gratuitManuel C


Plus de tutoriels clang: