Pb avec des structures [Résolu]

Signaler
Messages postés
52
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
5 juin 2007
-
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
-
Bonjour,

j'ai un probleme avec l'utilisation de structure. Je declare mon struct
en globale, je l'utilise ensuite dans une procedure qui remplit un
tableau de struct a partir de donnees d'un fichier.

ensuite je reutilise cette procedure dans une autre pour reutiliser les valeurs.

J'ai alors une erreur a la compilation:

sonet2.c:246: error: request for member 'nbCanaux' in something not a structure or union



Voici une partie de mon code:

struct TYPELIENS{

int nbCanaux;

int prixKm;

int tpsNettoyage;

int tpsConnexion;

};



void lectureTypes(int **types)

{

int i;



struct TYPELIENS tempTypes[nbTypesLiens];



for(i=0;i<nbTypesLiens;i++)

{

fscanf(fichierEntree,"%d",&tempTypes[i].nbCanaux);

fscanf(fichierEntree,"%d",&tempTypes[i].prixKm);

fscanf(fichierEntree,"%d",&tempTypes[i].tpsNettoyage);

fscanf(fichierEntree,"%d",&tempTypes[i].tpsConnexion);

}

printf("\n TypesLiens\n");

printf("%d",tempTypes[0].nbCanaux);

*types = tempTypes;

}



void procedure(void)

{

struct TYPELIENS *typesLiens[nbTypesLiens];

lectureTypes(&typesLiens);

printf("%d",typesLiens[0].nbCanaux);

}



Cette methode fonctionne lorsque j'utilise des tableaux et non avec des structs.

merci pour votre aide

6 réponses

Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
struct TYPELIENS typesLiens[nbTypesLiens];
lectureTypes(&typesLiens);
printf("%d",typesLiens[0].nbCanaux);
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
LectureTypes prend un entier en param pas une structure.

Soit cohérent dans ton code!

Shell
Messages postés
52
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
5 juin 2007

Cela ne change rien:

voici les changments que j'ai fait:

void lectureTypes(struct TYPELIENS **types)



et voici l'erreur:

error: request for member 'nbCanaux' in something not a structure or union



Merci
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
ymca2003> Tu vas finir par recevoir la médaille du bon saint maritain.

J'en connais un qui aurait répondu sans hésitation "Apprend les bases du C et reviens après".
Nous ne dirons pas qui .... ^_^

Shell
Messages postés
52
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
5 juin 2007

tu es sympa comme gars, [auteurdetail.aspx?ID=3585 DeAtHCrAsH], c'est un peu le but de ce forum d'aider non?

Tu ferais mieux d'expliquer !

Merci beaucoup tout de meme pour ta premiere reponse
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
Rhoooooo, ce n'etait point méchant.
En effet le forum est la pour aider, donc autant en profiter ^_^


Essaye tout de meme de te procurer un bouquin ou des tuto sur le C, ca t'eclaircira surement beaucoup.
K&R est niquel comme livre ou plutot comme bible.


Sinon va sur le site de BruNews tu trouveras de quoi faire niveau tuto :


http://brunews.free.fr/download/CP5.ziphttp://brunews.free.fr/download/CP5Sources.zip

Shell