和int char同样struct也是一种数据类型,也能够声明变量--结构变量。
定义结构体变量的通常格式为:c++
struct 结构名 { 类型 变量名; 类型 变量名; ... }结构变量;
另外一种经常使用的格式为:code
typedef struct 结构名 { 类型 变量名; 类型 变量名; ... }结构别名;
结构名是结构的标识符,它不是结构变量名,可加可不加。io
Struct 在C语言中有下面四种用法:变量
struct { int num; char name; }Stu;
Stu是这个结构体的结构变量,不能再声明其余结构变量,
只能直接访问
Stu.num;数据类型
struct Student { int num; char name; }Stu;
必须使用struct Student声明struct变量
struct Student Stu1;
Stu1.num;
而Stu已经被声明成struct变量可直接访问
Stu.num;命名
typedef struct { int num; char name; }Stu;
Stu至关于 struct{}的别名,能够声明struct变量。
Stu Stu1;
Stu1.num;数据
typedef struct Student { int num; char name; }Stu;
struct Student Stu1;
Stu1.num;
有typedef后,Stu至关于struct Struct{}的别名,能够声明struct变量
Stu St2;
St2.num;语言
在c++中很简单,直接co
struct Student { int num; char name; }Stu;
申明变量时可直接 Student Stu1;
而Stu仍是struct变量,可直接访问Stu.num;
在c++中使用typedef赋别名也和C中同样,只不过它可直接使用结构名,命名结构变量。结构体