Structure dans une structure (en C)

Fermé
StarNab - 10 déc. 2004 à 18:10
Ravachol Messages postés 566 Date d'inscription vendredi 5 mars 2004 Statut Membre Dernière intervention 30 octobre 2005 - 10 déc. 2004 à 21:40
Salut !

En fait j'ai créer mes strucutres : (Ca c'est juste l'amuse gueule, c'est pour un autre programme un peu plus consistant avec une histoire de liste chainées bien sur, sinon c'est pas drole.)

typedef struct Reponse
{
int numRep;

struct Reponse *nextRep;

}Reponse;

typedef struct Liste
{

char Chaine[3];

struct Liste * pSuivant;

struct Reponse TeteRep;

}Liste;
Et en fait, je voudrais accèder au champ numRep.
Mais comment ? ^^'
J'ai tenté ça : Nouveau.TeteR.numRep = 5;, mais sans succès.

Donc si quelqu'un peut me filer un coup de main, ça serait cool ! merci :)

2 réponses

StarNab Messages postés 16 Date d'inscription vendredi 10 décembre 2004 Statut Membre Dernière intervention 18 juin 2005 10
10 déc. 2004 à 21:09
Finalement j'ai trouvé, mais mon problème est ailleurs maintenant.

if (strchr(Nouveau->Chaine,'a') != NULL)
{
TeteR = (struct Reponse*)malloc(sizeof(struct Reponse));
TeteR = NULL;
Nouveau->TeteRep =*TeteR;
Nouveau = (struct Liste*)malloc(sizeof(struct Liste));
TeteR->numRep = 5;
printf("%d",(Nouveau->TeteRep).numRep);
}
En fait, je me prends systématiquement un Seg Fault, mais je ne vois pas comment faire autrement.

Une idée ?
0
Ravachol Messages postés 566 Date d'inscription vendredi 5 mars 2004 Statut Membre Dernière intervention 30 octobre 2005 120
10 déc. 2004 à 21:10
Salut,
Comme ceci, ça devrais le faire.
{ 
  Liste *tete;
  
  tete = malloc(sizeof(Liste));
  tete->TeteRep.numRep = 5;
  printf("%d \n", tete->TeteRep.numRep);
  free(tete);
}

A++

C'est pas parce qu'ils sont nombreux à avoir tort
qu'ils ont raison! (COLUCHE)
0
Ravachol Messages postés 566 Date d'inscription vendredi 5 mars 2004 Statut Membre Dernière intervention 30 octobre 2005 120
10 déc. 2004 à 21:12
Trop tard :-)

C'est pas parce qu'ils sont nombreux à avoir tort
qu'ils ont raison! (COLUCHE)
0
StarNab Messages postés 16 Date d'inscription vendredi 10 décembre 2004 Statut Membre Dernière intervention 18 juin 2005 10 > Ravachol Messages postés 566 Date d'inscription vendredi 5 mars 2004 Statut Membre Dernière intervention 30 octobre 2005
10 déc. 2004 à 21:27
J'étais sceptique mais ça marche bel est bien !
Merci m'sieur ! :-)
0
Ravachol Messages postés 566 Date d'inscription vendredi 5 mars 2004 Statut Membre Dernière intervention 30 octobre 2005 120 > Ravachol Messages postés 566 Date d'inscription vendredi 5 mars 2004 Statut Membre Dernière intervention 30 octobre 2005
10 déc. 2004 à 21:40
De rien.
Ca marche parceque la structure Reponse qui est dans la structure Liste n'est pas un pointeur ;-)

A++

C'est pas parce qu'ils sont nombreux à avoir tort
qu'ils ont raison! (COLUCHE)
0