Why use different a different tag and typedef for a struct?

Viewed 7387

In C code, I've seen the following:

typedef struct SomeStructTag {
    // struct members
} SomeStruct;

I'm not clear on why this is any different from:

typedef struct SomeStruct {
    // struct members
} SomeStruct;

What's the point of using a particular name for the type and typedefing it to a different type name?

5 Answers
Related