J'ai un probleme avec les Variables globales
J'ai declare long resultat = 0; dans un fichier .c et j'ai voulu acceder a cette variable a partir d'un autre fichier .c et le compilateur me dit que la variable est non definie dans le deuxieme fichier .c
Aidez moi. Merci
Si tu veux acceder a une autre variable globale a partir d'un autre fichier tu dois marquer 'extern' devant le nom de la variable, sans initialisation et sans type. ex :
// Fichier1.c int taVar = 7;
//...
// Fichier2.c extern taVar; // Et la variable serat globale au 2 fichier (Mais tu peux mettre 'extern' partout)
// ...
Après, il peut y avoir des moyens plus propre que de faire des variables globales (fonction,pointeur,...)
Merci les mecs
ca marche bien
je pensais qu'il suffit de declarer une variable juste apres les includes pour qu'elle soit globale (c'est ce que j'ai compri du cours de mateo sur les var glob)
tu n'a pas appellé la fonction triple, donc la valeur ne risque pas de changer.
puis une variable globale pour ce que tu en fait, c'est affreux tout pas beau :/
Comme le dis drexil, tu as oublier d'appeler triple().
Ensuite, si tu veux modifier une variable globale dans une fonction d'un autre fichier, tu dois aussi utiliser 'extern' :
J'ai mis la fonction en void vu que tu n'a pas besoin de retourner la valeur (ou alors ta variable globale ne sert a rien)
Variables globales
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
If you'd like to join us, read "How do we work at OpenClassrooms"! :)