Erreur de redéfinition à la compilation.

Erreur de redéfinition à la compilation. - C - Programmation

Marsh Posté le 09-01-2006 à 20:41:13    

Bonjour, je débute sous linux et j'ai un problème avec GCC quand je fais le typedef suivant:
 
typedef struct noeud {} *Arbre;
typedef struct noeud { Arbre droit;
                                           Arbre gauche;
                                           Char *mot;       } Noeud;
 
Cette syntaxe marche très bien à la fac wink
Mais la gcc me dit: Erreur: Redefinition of 'struct noeud'.
 
Peut être qu'il connaît pas le type struct en fait.

Reply

Marsh Posté le 09-01-2006 à 20:41:13   

Reply

Marsh Posté le 09-01-2006 à 20:59:05    

drksssh a écrit :


typedef struct noeud {} *Arbre;
typedef struct Noeud { Arbre droit;
                                           Arbre gauche;
                                           Char *mot;       } Noeud;


Essayes ça :)

Reply

Marsh Posté le 09-01-2006 à 21:10:59    

En principe ça devrait marcher sans la majuscule, parce que la si je mets Noeud ça change tout mon programme, j'ai deja essayé avec la méthode que j'ai décrite et ça marche nikel je c pas pkoi le gcc ke jai la sous ubuntu il me sort cette erreur, mais merci.

Reply

Marsh Posté le 09-01-2006 à 23:54:50    

drksssh a écrit :

Bonjour, je débute sous linux et j'ai un problème avec GCC quand je fais le typedef suivant:


typedef struct noeud {} *Arbre;
typedef struct noeud { Arbre droit;
                                           Arbre gauche;
                                           Char *mot;       } Noeud;


Cette syntaxe marche très bien à la fac wink


Ca m'étonnerait, ou alors ce n'est pas un compilateur C.

Citation :


Mais la gcc me dit: Erreur: Redefinition of 'struct noeud'.
 
Peut être qu'il connaît pas le type struct en fait.


Normal. On ne peut pas définir 2 fois un typedef avec le même alias.
 


typedef struct noeud Arbre;
 
struct noeud  
{  
   Arbre *droit;
   Arbre *gauche;
   Char *mot;
};
 
<...>
 
Arbre *Noeud;


Message édité par Emmanuel Delahaye le 09-01-2006 à 23:55:37

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed