Consider the following C struct:
struct person {
char *name;
unsigned int age;
};
In many samples of C code that I have recently come across, I have seen structs instead declared in the following manner:
typedef struct {
char *name;
unsigned int age;
} person_t;
Other than brevity in that a declaration can then be made as person_t bob
rather than struct person bob
, is there any advantage to doing this? Furthermore, what is the standard convention within the C community for when do declare a struct the normal way versus when to declare it within a typedef?