[elektro] C struktura kérdés
Lajos Rancz
lajos.rancz at gmail.com
Fri Apr 16 16:55:03 CEST 2010
Szia!
Ezt nem értem (az elsőt sem). Meg tudnád magyarázni egy bővebb példával?
Annyira leegyszerűsítetted, hogy nem érthető :o
Üdv,
Lajos
2010/4/16 hg12345 <hg12345 at freemail.hu>
> Ettől féltem :-(
>
> Mint említettem ez csak egy kiragadott példa.
> Az eredeti helyzetben egy ROM-ban összetett konstans leírását tartalmazza a
> strutc. Majd ez a struct igen sok helyen szerepel további struct belsejében.
> Mire leírom a teljes kifejtést, nem férek el monitoron, pedig nem kicsi, és
> értelmetlen lenne külön kifejteni a bitselect, mikor az többivel együtt
> értelmes.
>
> Ez a kis darab máshol és más környezetben szerepel, de a végén találkozik
> az eredeti struct-val
>
> Én nem akartam nevet adni a változó résznek, csak a struct-nak, hogy később
> hivatkozni tudjak erre a struct meghatározásra. Minden meghatározást
> szeretek egyszer definiálni, és a fordító bábáskodására bízom magamat és
> programomat.
>
> pontosan nem ertelek, de:
>
> typedef struct{
> unsigned b1:1;
> unsigned b2:1;
> };
>
> }AAA_T;
>
> typedef union {
> long V1;
> AAA_T tagAAA;
> } TEST_t;
>
>
> miert nem jo?
>
> A.
> On 2010. 04. 16. 15:32, hg12345 wrote:
> > Hi!
> >
> > Hogyan lehet egy unnamed struct struktura nevet adni?
> >
> > typedef union {
> > long V1;
> > struct tagAAA{
> > unsigned b1:1;
> > unsigned b2:1;
> > };
> > } TEST_t;
> >
> >
> > typedef struct tagAAA AAA_t;
> >
> > és későbbiekben ezt a typedef-et szeretném használni. A belső
> strukturának nem szeretnék nevet adni (unnamed).
> >
> > A fordító említi, hogy a tagAAA nem definiáltam ami jogos is.
> > Ezért később nem is tud rá hivatkozni.
> >
> > Ha felcserélem a TYPEDEF meghatározásokat vagy csak struct névvel
> definiálom ekkor nem tudok unnamed struct létrehozni, mert változó névre
> szükség van!
> >
> > #define esetén, meg nem válik azonos típusúvá a két struktura, ezért
> castolás nélkül nem tőtlhetők egymásba.
> >
> > A fenti példa csak egy egyszerűsítés de a lényeg jól látszik belőle.
> >
> > Van erre megoldás?
> >
> > -----------------------------------------
> > elektro[-flame|-etc]
> >
>
> -----------------------------------------
> elektro[-flame|-etc]
>
> -----------------------------------------
> elektro[-flame|-etc]
>
More information about the Elektro
mailing list