avr-gcc-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [avr-gcc-list] Typdef chick 'n egg situation.. way out ?


From: larry barello
Subject: RE: [avr-gcc-list] Typdef chick 'n egg situation.. way out ?
Date: Wed, 21 Jan 2009 09:14:39 -0700

Use a struct tag, rather than the typdef tag for your storage type, as:

typedef struct _TMenu
{
        ...
        struct _TMenuItem items[];
}
TMenu;

typedef struct _TMenuItem
{
        ...
        struct _TMenu *ptr;
        ...
}
MenuItem;

-----Original Message-----
Subject: [avr-gcc-list] Typdef chick 'n egg situation.. way out ?

Hi list,


Problem: I have two typdef's statement, each type contains a pointer to
the other type ! Hmmm....


typedef TMenuItem struct {
        char    text[20];
        TMenu   *ptr;
        void (*fptr)();
};

typedef TMenu struct {
        uint8_t         nb;
        char            title[20];
        TMenuItem       items[];
};


I am basically rewriting (following a computer crash..) a program I did
3+ years ago.. all from memory. Back then ISTR some kind soul on here,
sorted me out with something he called "forward declaration"... but I
can't seem to manage to find this particular post in the list archive
sadly.

I think it was a line just saying "TMenu" will be defined further down,
don't worry Mister GCC and just accept my TMenuItem struct below, you
will find TMenu soon enough. Something to that effect ! ;-)


TIA...

Regards,

--
Vince


_______________________________________________
AVR-GCC-list mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/avr-gcc-list






reply via email to

[Prev in Thread] Current Thread [Next in Thread]