[C] Non reconnaissance Membre strcucture
Résolu
Bonjour,
Bon, voilà plusieurs plombes que je n'arrive pas à résoudre une erreur... Si vous pouviez m'aider ça serait sympa :)
$ gcc -I../include -W -Wall -pedantic -c operations.c
operations.c: Dans la fonction «lol» :
operations.c:29: erreur: «struct Neurone» has no member named «etatSortie»
$ gcc -E -I../include -W -Wall -pedantic operations.c
Remarque : etatInterne est bien reconnu... Langue au chat.
Merci :)
Bon, voilà plusieurs plombes que je n'arrive pas à résoudre une erreur... Si vous pouviez m'aider ça serait sympa :)
$ gcc -I../include -W -Wall -pedantic -c operations.c
operations.c: Dans la fonction «lol» :
operations.c:29: erreur: «struct Neurone» has no member named «etatSortie»
$ gcc -E -I../include -W -Wall -pedantic operations.c
# 1 "operations.c" # 1 "<interne>" # 1 "<ligne de commande>" # 1 "operations.c" # 24 "operations.c" # 1 "../include/reseau.h" 1 # 29 "../include/reseau.h" typedef struct Neurone { float etatInterne; float etatSortie; float *poids; } Neurone; typedef struct Couche { Neurone* neurone; int nbNeurones; } Couche; typedef struct Reseau { Couche* couche; int nbCouches; int tempFormelle; float coeffApprentissage; float (*f)(float,int); } Reseau; # 25 "operations.c" 2 void lol(Reseau reseau) { reseau.couche[0].neurone[2].etatInterne=2; reseau.couche[0].neurone[2].etatSortie=2; }
Remarque : etatInterne est bien reconnu... Langue au chat.
Merci :)
A voir également:
- [C] Non reconnaissance Membre strcucture
- Reconnaissance musique en ligne sans télécharger - Guide
- Membre indisponible vinted - Guide
- Logiciel de reconnaissance de texte - Télécharger - Divers Bureautique
- Reconnaissance facial en ligne - Guide
- Impossible d'ajouter un membre dans un groupe whatsapp ✓ - Forum Facebook
5 réponses
typedef struct Neurone { float etatInterne; float etatSortie; float *poids; } Neurone; typedef struct Couche { Neurone* neurone; int nbNeurones; } Couche; typedef struct Reseau { Couche* couche; int nbCouches; int tempFormelle; float coeffApprentissage; float (*f)(float,int); } Reseau; void lol(Reseau reseau) { reseau.couche[0].neurone[2].etatInterne=2; reseau.couche[0].neurone[2].etatSortie=2; } int main(){ return 0; }
Ben ça chez moi ca compile très bien. Donc soit tu as mal copié collé, soit il nous manque les sections de code à problème.
Bonne chance
C'est très étrange parceque su je mets le fichier inclus et le fichier .c dans le même repertoire cela marche.
Je ne saisis pas du tout :(
Pensez-vous que ce soit un bug de gcc ?
Je ne saisis pas du tout :(
Pensez-vous que ce soit un bug de gcc ?
OK, merci.
Pourtant regarde j'ai préparé une archive simplifiée du problème disponible ici :
http://ekra.free.fr/Fichiers/bug.tar.gz
Avec un script tout fait dans src qui me provoque l'erreur. Si jamais tu as le temps tu peux m'en donner le résultat chez toi.
Pour ma part il me produit :
$ ./bug_script.sh
operations.c: Dans la fonction «lol» :
operations.c:29: erreur: «struct Neurone» has no member named «etatSortie»
Je te remercie en tout cas de ton intervention.
Pourtant regarde j'ai préparé une archive simplifiée du problème disponible ici :
http://ekra.free.fr/Fichiers/bug.tar.gz
Avec un script tout fait dans src qui me provoque l'erreur. Si jamais tu as le temps tu peux m'en donner le résultat chez toi.
Pour ma part il me produit :
$ ./bug_script.sh
operations.c: Dans la fonction «lol» :
operations.c:29: erreur: «struct Neurone» has no member named «etatSortie»
Je te remercie en tout cas de ton intervention.
Re
J'ai enfin trouvé la solution ! Dans les include/ j'avais compilé un .h suite à une erreur quelques jours auparavent en écrivant le Makefile.
Apparemment, gcc se servait du reseau.h.gch au lieu du reseau.h modifié.
=> rm reseau.h.gch
De longues heure de perdues !
Merci a+
J'ai enfin trouvé la solution ! Dans les include/ j'avais compilé un .h suite à une erreur quelques jours auparavent en écrivant le Makefile.
Apparemment, gcc se servait du reseau.h.gch au lieu du reseau.h modifié.
=> rm reseau.h.gch
De longues heure de perdues !
Merci a+
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question