Problème d'inclusion "multiple" de headers
Bonjour,
depuis quelques temps j'essaye de coder proprement et donc de ne plus faire un seul "gros" fichier .h que j'inclus dans chaque .c , mais comme il est conseillé un header par fichier source.
Voici 2 de mes headers :
1) param.h :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
#ifndef __PARAMETRES_H__
#define __PARAMETRES_H__
#include "app.h"
typedef struct param{
int resolution[2];
...
} Param;
int fonction(Necessaire *);
#endif |
2) app.h :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
#ifndef __APP_H__
#define __APP_H__
#include "param.h"
typedef struct necessaire{
...
Param opt;
...
} Necessaire;
#endif |
Voilà le problème : je suis obligé d'inclure réciproquement chaque fichier dans l'autre car ma structure "necessaire" contient une structure "param", et dans param.h ma fonction prend en paramètre un pointeur sur une structure "necessaire".
Et là le compilateur n'aime pas du tout il me sort des erreurs du style :
Code:
1 2
|
param.h : too many arguments for function "fonction" |
Donc j'aimerai savoir comment résoudre ce problème SANS être obligé de devoir faire un seul .h contenant les deux structures.
Merci :)