Passage de structure dans une procédure en c

Résolu/Fermé
giovedy - Modifié par giovedy le 6/10/2011 à 18:37
 giovedy - 6 oct. 2011 à 18:49
Bonjour,


voici l'erreur que j'obtiens :


1.c: In function 'plus':
1.c:44:7: error: request for member 'numero' in something not a structure or union





Pourriez vous m'aider ?

Voici la partie de code entière :



typedef int couleur[Max];
typedef struct sommet      
{     
 int numero;     
 int degre;     
 couleur couleursommet;     
}sommet;     


void plus(sommet *c)        
{     
    *c.numero=6;             
}     

/********************************************************************************/     
/*                       PROGRAMME PRINCIPAL                                  */           
/********************************************************************************/     

void main (void)     
{     
 sommet a;     
 a.numero=5;      
 printf("%d\n",a.numero);      
 plus(&a);      
 printf("%d\n",a.numero);      
                 
}

1 réponse

KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
6 oct. 2011 à 18:34
1) couleur n'existe pas mais tu l'avais peut-être mis plus haut dans ton code
2) Sur la ligne *c.numero=6; tu as un s qui se balade à la fin
3) Sur la même ligne, il faudrait mettre (*c).numero ou c->numero (c'est pareil)
1
désolé j'avais pas précisé. l'erreur est situé sur la ligne suivante :

printf("%d\n",a.numero);
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
6 oct. 2011 à 18:45
Il n'y a pas de raison qu'il y ait d'erreur là...
Après avoir corrigé les 3 points que j'ai mentionné ça marche !
0
o le boulet !
oui t'as raison merci beaucoup (encore une fois !)
0