Just found this and I want to share it with you.
I've tested it and it works on PellesC, VC++6, and VC++7.1
//An ugly working code
typedef struct __Element
{
long number;
long size;
struct __Element* next; //<-- ugly pointer to our own data structure
struct __Element* prev;
}Element, *pElement;
Guess what, we can replace it with a much better one. Here it is:
//A better version
typedef struct __Element* pElement; //<---define this first, so we can use it later.
typedef struct __Element
{
long number;
long size;
pElement next; //<-- ahh.. much better
pElement prev;
}Element;
Cheers
.