1 2 3 4 5
| void CreerTJoueur(Equipe *E,int nombre_club,chaine *joueur)
{
...
int x = nombre_club * max2;
joueur = (chaine*)malloc(x*sizeof(chaine));.... |
- max2 ? qu'est ce que c'est ?
- joueur est un paramètre. Donc c'est un variable (de type chaine *) initialisée au moment de l'appel à la fonction. Faire joueur = ...., montre que cette valeur est totalement ignorée. joueur doit être une variable locale ordinaire de la fonction, pas un paramètre.
(lvalue pour left value) Laisse penser que chaine est un tableau et dans ce cas
est illégal parce qu'il n'est pas une lvalue : il est impossible d'écrire tableau = ....
Si ces suppositions sont exactes,
joueur[i] = E[k].Tnomjoueur[j];
veut sans doute copier un tableau dans un autre ce qui n'est pas possible de cette façon. Si ce sont des chaînes de caractères, utiliser strcpy pour le faire.
Partager