Éditeurs de liens, chargeurs et exécutables
Que signifie l'écriture « extern int count; » en C ?
- AElle déclare que la variable count est définie ailleurs, sans réserver d'espace ici
- BElle crée une nouvelle variable count initialisée à 0
- CElle rend la variable count invisible hors de ce fichier
Afficher la réponse et l'explication
Réponse : A. Elle déclare que la variable count est définie ailleurs, sans réserver d'espace ici
extern est une déclaration indiquant que « la variable de ce nom est définie ailleurs, dans un autre fichier par exemple » ; aucune zone mémoire n'est réservée. Le compilateur produit des instructions référençant count sans connaître son adresse et enregistre leur emplacement dans les informations de relocalisation. L'éditeur de liens les associe à la définition située dans un autre fichier, comme « int count = 0; », et fixe l'adresse. La règle de base est d'écrire la déclaration extern dans un fichier d'en-tête et de placer la définition dans un seul fichier source.
Continuer : 9 autres questions sur Éditeurs de liens, chargeurs et exécutables