Aide - Recherche - Membres - Calendrier
Version complète : Déclaration de variable "extern"
Les Forums de PalmAttitude.org > GENERAL PalmOS > Développement sous PalmOS
naguttes
Comme indiqué dans ce post, je veux utiliser des variables globales. J'ai donc créé un fichier GlobalVar.h ou j'ai fait la déclaration (et parfois l'initialisation?) de ces variables (y compris les structures).

J'ai ensuite fait un include de ce GlobalVar.h dans tous mes fichiers .c. Maintenant quand je lance la compilation j'ai l'erreur suivante pour toutes mes variables
CITATION
in file included from main.c:8:
GlobalVar.h:8:Multiple storage classes in declaration of gTrace


et gTrace est déclarée comme suit :
CITATION
extern static Char gTrace[3];


Une idée icon_question.gif (je me doutais qu'organiser mes sources me causerait des problèmes)
naguttes
Google est ton ami !!

J'ai trouvé il ne faut pas que j'ai à la fois extern et static dans ma déclaration
Patrice
Moui... C'est un peu contradictoire : une variable globale static ne peut pas être utilisée en dehors du source où elle est déclarée, alors qu'une extern est une variable déclarée dans un autre source icon_lol2.gif
Corto
autre chose, on ne défini pas de variables globales dans un .h, on la déclare juste.
CITATION(.c)
UInt16 gMaGlobale; //ma définition

CITATION(.h)
extern UInt16 gMaGlobale; //ma déclaration
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2008 Invision Power Services, Inc.