Bonjour,

Je coince sur un probleme d'écriture.
J'ai ecris du code suivant ,
Main.c :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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