在C语言中,struct用于定义一个结构体,而typedef struct用于给结构体起一个别名。
使用struct关键字定义结构体时,需要在定义结构体的同时给出结构体的名称。例如:
struct Person {
char name[20];
int age;
};
而使用typedef struct,则可以在定义结构体的同时给结构体起一个别名,方便之后的使用。例如:
typedef struct {
char name[20];
int age;
} Person;
在上述例子中,Person就是结构体的别名,可以直接使用Person来创建结构体变量。例如:
Person p1;
p1.age = 20;
这样,使用typedef struct定义结构体后,可以直接使用别名来创建结构体变量,而不需要再使用struct关键字。这样的话,代码更加简洁,易读性也更好。