Bonjour et bonne annee a tous!
Visiblement en cette nouvelle annee je me rend compte que j'ai un probleme avec les variables a partager a plusieur fichier.
Voici le probleme:
J'ai un projet avec N fichier .c, dans chaque fichier source il y a aumoins une fonction qui accede a une ressource externe (USB, Serveur X...) ce que je veux faire c'est creer 3 variables:RES_INFO RES_ACCESS et RES_ERROR. ces variables sont dans ressource.h (qui n'a pas de ressource.c) et doit etre inclut dans tout les .c. Ces deux variables serve a signaler quelle fonction a accede a quoi et quelle erreur genre
fonction getRadarInfo:
le but est de pourvoir lire savoir a tout moment qui est le dernier a avoir vais appelle a un des devices inscrit dans la liste et connaitre la nature de l'erreur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 struct USBstr *getRadarInfo(struct *usb) { RES_ERROR=NONE; RES_INFO=DEVICE_USB ; RES_ACCESS=0xA1; //code d'identification de la fonction appellante ... ... //fait quelque chose avec l'usb if(usb->result==NULL) { RES_ERROR=ERROR_DEVICE_USB_DATA; ... } ... }
le probleme c'est que a la compilation on me parle de multiple declaration des 3 variabledonc des que le premier fichier a inclut les autres se pleignent.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 #ifndef __RESSOURCE_H_ #define __RESSOURCE_H_ unsigned int RES_ERROR; unsigned char RES_INFO; //maximum 256 devices unsigned int RES_ACCESS; #endif
Partager