typedef struct { int i; } foo; typedef struct { foo f; char c; } bar; typedef struct { bar b; long l; } baz; In memory, baz looks like this: { int i; char c; long l; }