1,在c中定义一个结构体类型:
(typedef) struct (Student)
{
int a;
}Stu;
()表示可有可无
这里若加了typedef,则末尾的Stu必须有;这时Stu表示一个结构体类型,即struct (Student)的别名,于是声明变量时可以:Stu student1;
这里若没有typedef,则Student必须有,此时申明变量:struct student st1;
2,在c++中定义一个结构体类型:
struct student
{
int a;
};
这样就定义了结构体类型student,声明变量可以直接student st1;
struct student
{
int a;
}Stu;
此时Stu表示结构体变量
typedef struct student
{
int a;
}Stu;
此时Stu表示结构体类型
3,如果在c程序中写:
typedef struct
{
int num;
int age;
}aaa,bbb,ccc;
此时,aaa,bbb,ccc都表示结构体类型,在c++中也是;但是值得注意的是,如果在c++中将typedef去掉,则此时aaa,bbb,ccc则表示完全不同的三个对象。