pb avec typedef - C - Programmation
Marsh Posté le 10-06-2005 à 23:44:39
Voila le code des exemples que j'avais trouvé :
Code :
|
la fonction "Ajouter" :
Code :
|
Là, ça marche !
Marsh Posté le 10-06-2005 à 23:59:33
theredled a écrit :
|
Marche pas. 'struct eltliste' n'est pas défini.
Une solution :
|
Marsh Posté le 11-06-2005 à 00:05:12
c'est quoi ces manie de mettre de maj au variables mais pas au type ? c'est pourtant pas compliqué. Homme / un homme. C'est une histoire de nom / nom commun.
Marsh Posté le 11-06-2005 à 00:05:17
Oh
Lumière que tu es.
Citation : Marche pas. 'struct eltliste' n'est pas défini. |
Tu veux dire qu'il n'est pas défini pour *suiv et *prec j'imagine? Il est défini après quand même ?
Marsh Posté le 11-06-2005 à 00:09:35
theredled a écrit :
|
Ben non. Il est jamais défini.
Marsh Posté le 11-06-2005 à 00:10:08
Tout à fait Taz (pr tes 2 msg, quoique j'ai pas compris le 2e [EDIT : en fait si je crois]).
Pas con le truc homme Homme. On peut même expliquer HOMME = mr DUTROU = une personne définie = constante.
En fait c'est juste que la variable je l'utilise plus souvent donc je lui met un nom plus comprehensible quoi. Mais un homme, l'Homme quoi c'est vrai merde...
Marsh Posté le 11-06-2005 à 00:13:46
Emmanuel Delahaye a écrit : Ben non. Il est jamais défini. |
?
Source http://www.linux-kheops.com/doc/ansi-c/
Citation : Si on déclare : |
Apparemment chez lui ça marche pourtant. Et le compil n'a pas crié pour "eltlist *FirstEl".
Marsh Posté le 11-06-2005 à 00:16:14
vraiment ça me tue toutes ces économies de bout de chandelles pour au final passer sa soirée devant des problèmes qui n'existe pas.
Fais en 2 fois. On voit très communément :
Code :
|
Marsh Posté le 11-06-2005 à 00:17:42
theredled a écrit :
|
Je répète " struct eltliste n'est jamais défini". Je ne te parle pas de 'eltliste' qui est défini par le typedef et qui pourrait s'appeler tartemolle...
Marsh Posté le 11-06-2005 à 00:43:18
ok
merci !
Marsh Posté le 10-06-2005 à 23:42:02
Hi
Voila, avec avoir lu et compilé des exemples sur les listes chainées qui marchent à merveille, j'ai décidé pour voir si j'avait compris, de tout refaire moi-même sans regarder les exemples. J'ai réussi sauf une chose : typedef.
J'avais au départ fait tout le programme en utilisant la dénomination "struct eltliste" pour le type, ça marchait, j'ai rajouté typedef pour moins de prise de tête, et là pb.
En effet voila la déclaration :
Et voilà là ou bloque le compilateur (GCC - DevCpp)
[ certes ne n'est pas très bien codé, un peu trop compliqué pour rien ]
Il me dit : "dereferencing pointer to incomplete type".
Je rappelle que je n'ai rien changé sauf la dénomination de la structure (de "struct eltliste" à "eltliste" ).
Les champ prec et suiv étant eux par contre déclarés de type "struct eltliste", on peut penser que l'incompatibilité vient de là. Or les exemples que j'avais trouvé, j'ai vérifié marchait exactement pareil, le compilateur considérait donc que "struct eltliste" = "eltliste".
Où est la subtilité ?