Bonjour à tous,
J'ai une question à propos de mon code.
Voici la partie de code qui ne fonctionne pas; j'ai trouvé l'endroit du bug grâce aux printf('!!!').
Je l'ai mis dans deplacements.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 UnePiece faire_descendre_piece(int tab_jeu[NB_LIGNES][NB_COLONNES], UnePiece piece) { int i=0,j=0,cacahuete=0; //piece.tab est une matrice 4x4 for(i=0;i<4;i++) { for(j=0;j<4;j++) { if ((piece.tab[i][j]==1)&&(tab_jeu[i+piece.pos_ligne+1][j+piece.pos_colonne]==1)) // Je scanne ma matrice piece.tab afin d'y voir s'il y a un 1. Je scanne également mon tableau de jeu //et si j'ai un 1 dans la ligne en dessous de ma pièce, alors je ne pourrai pas descendre ma pièce //(mais je ne vous ai pas donné le reste du code, seulement mon souci) { cacahuete++; } // Si j'insère un printf("!!!"), j'ai 12 ! } // Si j'insère un printf("!!!"), j'ai 3 ! }
Je vous mets aussi la définition de ma structure UnePiece..
Je l'ai mis dans pieces.c.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 typedef struct { int tab[4][4] ; int pos_ligne; int pos_colonne; } UnePiece ;
Je me rends bien compte que le problème est dans ma boucle for, au niveau de mes "i". Mais ça fait bientôt 1h que je cherche, que j'essaie des choses, mais je ne vois pas mon erreur, c'est pourquoi je fais appel à vous!
Merci d'avance pour votre aide.
Cordialement.
P.S.: Mon code est "juste", mais c'est ma console d'application qui bug..
Partager