Bonjour,
Merci pour vos réponses.
J'ai essayé d'initialiser le tableau avec :
partie* a = coups_possible(*b,'N');
mais ça me retourne une erreur à la compilation :
1 2 3
| $ gcc debut\(2\).c -o debut\(2\)
debut(2).c: In function main:
debut(2).c:490: error: incompatible types when initializing type struct partie * using type partie |
@kwaritz : par des tests antérieurs je m'étais rendu compte que j'entrais bel et bien dans le if. En enffet, nbcoups était bel et bien égal à 4;
Et oui ce projet m'a été donné à faire par ma fac, le but final étant de faire un othello et de pouvoir jouer contre l'ordi avec plusieurs niveaux de difficulté.
EDIT :
J'ai essayé de faire une fonction pour re vérifier le if, une fonction qui affecte une valeur à nbcoups.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| int Ncoups_possible(othellier p, joueur j){ /* qui renvoie la liste des coups possibles du joueur j sur lothellier p*/
char a,b;
coup c;
int i,n=0;
//coup* tab = malloc(sizeof(coup)*z.nbcoups);
for(a = '0'; a < '8'; a++){
for(b = 'A'; b < 'I'; b++){
c[0]=j;
c[1]=b;
c[2]=a;
if(est_possible(p,c)){
n++;
}
}
}
partie * z = malloc(sizeof(partie)+ sizeof(coup)*n);
z-> nbcoups = n;
return n;
} |
Ca me retourne une segmentation fault à l'exécution ...
Partager