Bonjour à tous,
Je suis en train de développer un petit jeu, et je m'heurte à un petit soucis technique.
Je souhaite créer une structure (Damier) contenant un tableau de pointeur de structure.
En gros, le "damier" à toute ses cases à null en début de partie, et au fur et à mesure est remplis dynamiquement par des adresses.
Voilà le code ( que je pense juste, enfin j'espere) que j'ai fais :
1 2 3 4 5 6 7 8 9 10
|
struct TCellule
{
Tpion *pion;
};//Une cellule contient l'adresse d'un pion
typedef struct
{
struct TCellule matrice[KMAX_LONG_LIGN][KMAX_LONG_COLO];
}TDamier;//Un damier est composé d'une matrice de cellule |
Maintenant, pour accéder au contenu d'une cellule(l'adresse d'un pion), il me semble que la syntaxe correcte doit être :
damier.matrice[i][j].pion
Enfin imaginons que l'on créé un pointeur de damier pG (pour le passer en paramètre d'une fonction par exemple), l’accès à la cellule serait :
1 2 3
| pG->matrice[plign][pcolo].pion
//ou
(*pG).matrice[plign][pcolo].pion |
Or je dois m'être planté dans ce que j'ai fait plus haut car lors de la compilation cette ligne :
return (! pG->matrice[plign][pcolo].pion == NULL);
le compilo me retourne :
warning: comparison between pointer and integer
Donc voilà, je ne comprends pas pourquoi cela ne fonctionne pas, vous avez une idée?
Partager