结构体是一种自定义类型,它允许程序员将不同类型的数据项组合在一起,形成一个新的数据类型。结构体类型是通过 struct 关键字来定义的。
1.结构体类型的定义
结构体类型定义的一般形式为:
struct 结构体标签 { 成员1类型 成员1名; 成员2类型 成员2名; ……};
其中,结构体标签是这个结构体类型的名称,成员类型表示每个数据项的数据类型,成员名则是每个数据项的名称。
2.结构体类型和结构体变量的区别
结构体类型只是定义了一种新的数据类型,而结构体变量则是根据这个数据类型定义的实际变量。可以把结构体类型看成是一个模板或者蓝图,而结构体变量则是基于这个模板创建的具体对象。
例如,假设现在要定义一个描述学生信息的结构体,那么就可以定义以下结构体类型:
struct Student { char name[20]; int age; char gender;};
在上面的结构体类型中,Student 是这个结构体类型的标签;name、age、gender 分别是成员的名称;char 和 int 则是成员的类型。
定义好结构体类型之后,就可以定义以下结构体变量:
struct Student stu1;struct Student stu2;
其中,stu1 和 stu2 都是基于 Student 结构体类型定义的实际变量。这些变量可以像普通变量一样被使用,例如:
strcpy(stu1.name, "小明");stu1.age = 18;stu1.gender = 'M';
以上代码向 stu1 这个学生信息变量中赋值。
阅读全文