Besoin d'aide pour les struct en C

Fermé
Troosh Messages postés 3 Date d'inscription dimanche 3 avril 2011 Statut Membre Dernière intervention 4 avril 2011 - 3 avril 2011 à 17:14
Troosh Messages postés 3 Date d'inscription dimanche 3 avril 2011 Statut Membre Dernière intervention 4 avril 2011 - 4 avril 2011 à 20:55


Bonjour,
je suis en train de faire un jeu de Yahtzee pour mes cours, et il m'rrive un petit problème :
J'ai mis tout les joueurs dans une structure, et je voudrais qu'une fonction puisse modifier les paramètres d'un joueur donné j'ai simplifié le code pour vous imager mon problème:

#include<stdio.h>

int nbrDeJoueur = 10;

struct joueur {
	int score[10];
};


void reinitialiserScore(joueur *j) {
*j->score = 0;
}

int main(int argc, char argv[]) {
	struct joueur j[nbrDeJoueur];
	int i;
	for(i = 0; i < nbrDeJoueur; i++) {
		reinitialiserScore(j[i]);
	}

}


L'ereur retourné lors de la compilation par mon terminal est :

troosh@ubuntu:~/C$ gcc test3.c
test3.c:10: error: expected `)' before `*' token

merci,

2 réponses

Hxyp Messages postés 401 Date d'inscription vendredi 28 janvier 2011 Statut Membre Dernière intervention 27 avril 2014 54
3 avril 2011 à 20:58
Bonjour,
"joueur" n'est pas un type définie il faut préciser son type
void reinitialiserScore(struct joueur *j) {
et il faut lui envoyer l'adresse de j[i] :
reinitialiserScore(&j[i]);
Vous utiliser un tableau de int dans la structure est-ce que c'est prévu que chaque joueur aient 10 scores ? Parce que dans la fonction reinitialiserScore vous allez devoir remettre à zero chaque valeur du tableau avec une boucle :
int i; for(i=0;i<10;i++) { j->score[i]=0; }
0
Troosh Messages postés 3 Date d'inscription dimanche 3 avril 2011 Statut Membre Dernière intervention 4 avril 2011
4 avril 2011 à 20:55
Merci beaucoup!
Effectivement cela parait plus logique merci!

Et non chaque joueur à un seul score je me suis trompé dans l'image de mon problème.
Bonne soirée et encore merci.
0