Structs that refer to each other
c, gcc
Solution
How is that supposed to work? `a` would contain `b`, which would contain `a`, which would contain `b`, etc...
I suppose you want to use a pointer instead?
struct b;
struct a {
struct b *bb;
};
struct b {
struct a *aa;
};
Even that though is bad coding style - circular dependencies should be avoided if possible.
Problem
I want to have two structs that can contain each other. Here is an example: ``` struct a { struct b bb; }; struct b { struct a aa; }; ``` But this code doesn't compile. gcc says: ``` test.c:3: error: field ‘bb’ has incomplete type ``` Is there a way to achieve this?