|
Page Précédente | |
Auteur | Sujet : [C] Possible de faire un extern sur une union de struct [RESOLU] ? |
Publicité | Posté le 06-10-2004 à 14:50:55 |
yoms |
|
Taz bisounours-codeur |
non, t'as une union avec des déclarations à l'intérieur, mais rien d'autre.
|
g012 | Je traduis la réponse de Taz: tu viens de déclarer un type et non une variable; extern indique une variable/fonction bref un truc référençable une fois compilé en fichier objet. Un type ça ne produit pas de code.
|
Taz bisounours-codeur | ben tu traduis mal
|
cris56 | typedef union Message édité par cris56 le 06-10-2004 à 20:15:01 |
Taz bisounours-codeur | par exemple, avec des types anonymes. Mais comme dit, définir de part et d'autres les structures parait plus clair. Mais tout ça est tout à fait valide |
g012 |
yoms | Je ne sais pas si j'ai bien compris la réponse de Taz, toujours est-il que je déclare une variable de ce type et que je l'initialise sans pb. Avant union, j'ai écris "typedef". Donc oui, je déclare que dalle, mais parès je fais ça :
marche nickel. Quand je suis l'évolution de mes variables dans le debbug, ça marche aussi.
Nickel
Grosse daube
|
cris56 | ce qu'il faut comprendre c'est que
|
Publicité | Posté le 06-10-2004 à 21:03:17 |
Taz bisounours-codeur | tu fais quoi avec ton NULL là ? je vois de pointeur nulle part ?
|
yoms | Mais je ne veux pas déclarer une variable du type struct Foo puisque je fais une union. C'est une variable du type de l'union que je déclare. |
Taz bisounours-codeur | Non, là tu déclares un type union, tu n'instancies pas de variables nulle part. Et c'est bien ça le problème. Quand tu fais de la composition, il faut déclarer des membres, pas seulement leur type. |
yoms | Oui le NULL, tu le remplaces par 0.
|
yoms | J'ai une réponse de retard |
cris56 | teclare tes unions comme des struct ! |
yoms | Oui je déclare un type union. On est d'accord et j'instancie une variable de ce type en faisant
|
cris56 | t'y est pas la |
Taz bisounours-codeur | tu instancies et tu initialises, c'est clair pourtant ! |
yoms |
|
cris56 | struct Tata |
Taz bisounours-codeur | non, c'est pas du tout ce que je veux dire. |
yoms | Taz > je ne sais pas à qui tu réponds. Si c'est à moi, pourrais-tu me donner un petit exemple en partant de ce que j'ai écris pour mettre en relief le truc que tu veux me dire. Merci.
|
cris56 | pas possible
|
yoms | Qu'est-ce qui n'est pas possible ? Les champ de bits ? Est-ce que tu veux me dire que tu veux instancier des variables de types Toto, Tata et Titi ? |
cris56 | oui ! |
Taz bisounours-codeur | y a vraiment un truc pas clair dans ta tête, t'as pas les bases. |
yoms | Taz > bof comme remarque. Faudra juste que tu m'expliques pourquoi ça marche très bien quand c'est pas en extern.
Message édité par yoms le 06-10-2004 à 21:49:27 |
Taz bisounours-codeur | cris56, je te laisse casser l'autre aveugle. |
cris56 | j'en peu plus
|
yoms | Taz > A part insulter les gens, les traiter de blaireau ou que sais-je comme tu l'as déjà fait sur l'autre topic il y a qq temps, tu sers à quoi ? Même pas foutu de me dire pourquoi le code marche avec ça quand je ne l'utlise pas en extern. Le hasard hein ? Par cotnre insulter, même quand tu te trompes (cf. licence BSD sur l'autre thread ou tu nous traite de blaireaux de pirateur), ça tu sais faire. T'excuser quand on te prouve que t'as tort, ça par contre...
|
Taz bisounours-codeur | parce que la signification de extern.
|
cris56 | - ta un probleme
|
yoms | cris, je ne t'ai rien reproché, mais j'accepte pas de me faire insulter point barre.
|
Taz bisounours-codeur | parce que tu ne sais pas ce que fais extern, ce qui montre bien que tu ne différencies pas déclaration et allocation. |
yoms | Et bien si l'erreur vient de là et que tu voulais m'aider, il aurait été plus judicieux de me dire quelle est la subtilité que fait extern et qui entraîne que ça marche lorsque c'est utilisé en "non" extern et que ça marche pas lorsque c'est en extern. C'est ça mon pb et c'est ça que je veux savoir depuis le début. Ca figure même dans le titre du thread. |
Taz bisounours-codeur | non, la véritable erreur n'est pas là. Comme dit dans mon premier message, extern ou pas, ta déclaration ne déclare rien du tout. |
Lam's Profil: bas. |
|
Taz bisounours-codeur | Lam's : y a pas de bug de compilateur. Y a juste des gens qui font des déclarations qui ne déclarent rien et utilise extern sans en comprendre le sens.
|
yoms | Ah merci Lam's ! Donc en effet je vais voir si je peux me démerder avec un autre compilo. Car c'est vrai qu'il y avait un truc qui m'intriguait, c'est que lorsque je faisais la même union, mais qu'avec une seule struct dans l'union et des variables de type int (cf. exemple 2 du premier post), ça passait sans pb. Ce n'est que lorsque je faisais une union avec au moins 2 struct que ça plantait en extern. C'est pour ça que ça me paraissait flou. Toi aussi tu utilises LabWindows ? |
Publicité | Posté le |
Page Précédente |
Sujets relatifs | |
---|---|
[HTML/PHP][Résolu] Problème de sauvegarde pour les formulaires | [JAVASCRIPT] Possible de récuperer la date de création d'une image ? |
[Assez urgent] Lien au sein d'un tableau, c'est possible ? | [RESOLU]probleme avec ma session |
Supprimer tout ce qui n'est pas lettre et chiffre (resolu) | [RESOLU] problème de condition sur un requête SQL |
Probleme d'une simple expression reguliere [RESOLU] | [Résolu][Eclipse 3] générer un "model" |
[resolu]Forcer telechargement header() prob dans include() help | probleme avec md5 et ma session [RESOLU] |
Plus de sujets relatifs à : [C] Possible de faire un extern sur une union de struct [RESOLU] ? |