C: probleme de compil sur un typede => ferror: syntax error before '' - C - Programmation
Marsh Posté le 17-12-2014 à 08:21:11
Bonjour,
Cette erreur viens du faite que Toto n'est pas reconnu en tant que type dans ton main.
Tu doit appeler le .h ou se trouve
Code :
|
dans ton main et pas l'inverse.
Marsh Posté le 17-12-2014 à 10:46:01
Il y a un autre type de problème dans ton "architecture" : c'est include croisé :
- le main.h include le lib.h
- le lib.h include le main.h
C'est un vrai souci sur le long terme. La protection avec le #ifndef #define #endif est là pour gérer le problème d'ordre d'import et non de gérer des includes croisés.
Le main.h doit includer tous les .h mais les libXXX.h ne le doivent pas car c'est bien l'application qui est un assemblage de module mais les modules ne doivent pas "résupposer" le fonctionnement applicatif global
Donc ton lib.h NE DOIT PAS faire d'include de main.h
Marsh Posté le 17-12-2014 à 14:22:20
Vu qu'on n'est plus à l'age de pierre, plutôt que les
#ifndef XXX
#define XXX
...
#endif
les compilos modernes supportent la directive
#pragma once
http://en.wikipedia.org/wiki/Pragma_once
A+,
Marsh Posté le 16-12-2014 à 23:32:08
Bonjour
j'ai une erreur de compilation que je n'arrive pas à résoudre avec l'utilisation d'un typedef
l'erreur est la suivante : main.h:6: error: syntax error before 'titi'
voilà les 4 fichiers que j'utilise :
le main.c
avec son .h
puis une librairie "lib.c" dans laquelle je créer le typedef
avec son .h
je pense qu'il y a un problème avec les 2 .h qui s'appellent, mais je ne sais pas comment le résoudre
Merci d'avance