Junior — Middle
Comment l'utilisation du mot-clé static affecte-t-elle les propriétés des variables globales dans un programme?
sobes.tech IA
Réponse de l'IA
Le mot-clé static lors de la déclaration d'une variable globale en C/C++ limite la portée de cette variable au fichier actuel (unité de traduction). Cela signifie que cette variable ne sera pas visible ni accessible depuis d'autres fichiers, même s'ils incluent ce fichier via extern.
Ainsi, static rend une variable globale interne au fichier, évitant les conflits de noms et assurant l'encapsulation au niveau du fichier.
Exemple:
// file1.c
static int counter = 0; // visible uniquement dans file1.c
void increment() {
counter++;
}
// file2.c
extern int counter; // Erreur : counter n'est pas visible à cause de static