Pointeur de structure en argument
Bonjour,
Je coince sur un probleme d'écriture.
J'ai ecris du code suivant ,
Main.c :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
#include <....//mes include systeme
.....
typedef struct {
tile_t date
.........
.......
} Mesures;
#include "....."//mes include locaux
int affOLED(Mesure *);
int main(int argc, char** argv)
{
......//des definitions
Mesures Mes;
......... // du code
AffOled(&Mes);
.........//du code
}
int AffOled(Mesures *Mes)
{
struct tm ld;
ld= *localtime(&Mes->date);
......//du code
} |
Cela fonctionne très bien.
Maintenant , comme le code de la fonction AffOLED() devient très important, je désire mettre cette fonction dans un fichier .c séparé.
J'ai donc écris un AffOLED.c ,
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
#.......//include systeme
#include "Affiche.h"
int AfficheOled(Mesures *Mes)
{
char LaDate[50];
struct tm *ld;
ld= localtime(& (Mes->date));
.........................
} |
Puis j'ai créé un .h comme suit :
Code:
1 2 3 4 5 6 7 8 9
|
#ifndef __AFFICHE
#define __AFFICHE
extern Mesures *;
extern int AfficheOled(Mesures *);
#endif |
j'ai rajouter #include "Affiche.h" dans le main.c
Code:
1 2 3 4 5 6 7 8 9 10
|
typedef struct{
} Mesures;
#include "Affiche.h"
int main(...)
{
....
} |
Et la, plus rien ne vas......
J'ai essayer avec diverses versions du .h,
extern struct Mesures *Mes;
extern typedef Mesures *Mes;
extern typedef struct Mesures *Mes;
mais je crois surtout que je n'ai pas encore bien assimilé les pointeurs, les typedef, et autre subtilités du multi fichier en C
Si quelqu'un avait une idée, ou une correction.....
Pour info ce code est ecrit en C sous linux rasbian avec l'éditeur geany.
Un grand merci pour m'allumer la lumière
Michel