Bonjour, merci pour la considération pour mon problème.
J'ai un peu honte de poster pour une ,à priori, erreur de syntaxe mais je ne trouve vraiment pas la solution.
A la compilation, une erreur apparait sous forme : "listeChainee.h:21: error: expecte ')' before '*' token", cela concerne la fonction coup* choixCoup(Jeu *j).
Sachant que la fontion incriminée n'est utilisée qu'une fois dans jeu.c.
Je sous debian 8 avec une VM, je code sur geany et je compile avec GCC.
//le listeChainee.h qui contient le prototype de la fonction choixCoup();
//le jeu.h
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 #ifndef _LISTECHAINEE_H #define _LISTECHAINEE_H #include "jeu.h" typedef struct coup { int posX,posY; struct coup *suivant; }coup; typedef struct affcoups { char lettre; struct affcoups *suivant; char couleur[2]; }affcoups; int compareCoups(coup *debut, const coup *jouable); void coupExiste(coup **debut,int x, int y); void afficherCoupsPossibles(affcoups *debut); coup* choixCoup(Jeu *j); affcoups* initAffichage(); affcoups* vraiAffichage(affcoups *debutaff,coup *debutcoup); #endif
// l'utilisation de choixCoup dans jeu.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 #ifndef _JEU_H #define _JEU_H #include "humain.h" #include "plateau.h" #include "listeChainee.h" typedef struct Jeu { plateau *pl; humain *h; }Jeu; void afficherJeu(const Jeu * jeu); Jeu* creerJeu(int tX, int tY,int nbP, int nbM); void initialiserJeu(Jeu* jeu); void jouerCoup(Jeu *j, coup *cp); void jouer(Jeu *j); #endif
Merci d'avance pour vos reponses.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 void jouer(Jeu *j) { afficherJeu(j); jouerCoup(j,choixCoup(j)); }
Partager