A voir également:
- Allocation dynamique tableau de structure c
- Tableau croisé dynamique - Guide
- Tableau word - Guide
- Impossible d'afficher le rapport de tableau croisé dynamique sur un rapport existant ✓ - Forum Excel
- Code ascii tableau - Guide
- Le nom du champ de tableau croisé dynamique n'est pas valide ✓ - Forum Excel
5 réponses
Bonjour
Si tu veux allouer une structure par joueur, il faut te baser sur la taille de la structure, pas celle du pointeur !
tab = malloc(sizeof(tab) * nombreJoueurs); à remplacer par
tab = malloc(sizeof(struct Joueur) * nombreJoueurs);
Pour ta boucle sur les joueurs, ton for(i;i<sizeof(tab);i++) ne risque pas de fonctionner.sizeof(tab), c'est la taille de la variable tab en octets, qi n'a aucun rapport avec le nombre de joueurs. Il faut rendre la globale la variable nombreJoueurs et faire for(i;i<nombreJoueurs;i++)
Si tu veux allouer une structure par joueur, il faut te baser sur la taille de la structure, pas celle du pointeur !
tab = malloc(sizeof(tab) * nombreJoueurs); à remplacer par
tab = malloc(sizeof(struct Joueur) * nombreJoueurs);
Pour ta boucle sur les joueurs, ton for(i;i<sizeof(tab);i++) ne risque pas de fonctionner.sizeof(tab), c'est la taille de la variable tab en octets, qi n'a aucun rapport avec le nombre de joueurs. Il faut rendre la globale la variable nombreJoueurs et faire for(i;i<nombreJoueurs;i++)
11 mai 2011 à 14:16
Modifié par le père le 11/05/2011 à 14:33
Pour mon info (je ne suis pas spécialiste en C) : dans la déclaration de la struct Joueur, il ne manquerait pas un nom pour le dernier champ struct FeuilleScore ? Car je ne vois pas comment y accéder