结构体与共用体小结一,结构体得概念与定义1,结构体得定义struct 结构体名{ 数据类型 成员名 1; 数据类型 成员名 1; 、、、};这里数据类型可以就是复合类型,例如又就是一个结构体类型,即嵌套; 2,结构体变量得定义struct 结构体名 变量名 1,变量名 2,,,变量名 n;或:struct 结构体名{ 数据类型 成员名 1; 数据类型 成员名 1; 、、、}结构体变量 1,结构体变量 2;或:struct{ 数据类型 成员名 1; 数据类型 成员名 1; 、、、}结构体变量 1,结构体变量 2;三种方式,第三种方式得话,每次要定义这个类型得结构体变量都要重复得写这一段代码; 其实定义了结构体后,struct 结构体名就就是一种新得类型,上述语句就像声明变量一样; 3,结构体变量得引用只能对结构体变量中得各个成员分别输出,不能对一个结构体变量作为一个整体输出;嵌套得结构体类型得引用:结构体变量名、结构体类型成员名、内嵌结构体得成员名; 4,结构体变量得初始化struct 结构体名 变量名 = {初始化数据};或者在定义得时候就初始化:struct 结构体名{ 数据类型 成员名 1; 数据类型 成员名 1; 、、、}变量名 = {初始化数据}; 二,结构体数组1,结构体数组得定义举例struct stu{ int stu_nu; char name[20]; float score;};struct stu student[5];或者:struct stu{ int stu_nu; char name[20]; float score;}student[5];或者:struct{ int stu_nu; char name[20]; float score;}student[5];跟定义结构体变量得三种形式就是一样得,只不过这里每次定义得结构体变量就是一个数组;每一个 student[i]都就是 struct stu 类型得; 2,结构体数组得初始化与引用略; 三,结构体与指针1,指向结构体得指针得定义,同上,也就是三种形式;struct employees employee1,*p1;或者:struct employees{ 、、、}employee1,*p1;或者:struct{ 、、、}employee1,*p1;然后可进行如下操作:p1 = &employee1;此时 p1 指向首地址; 2,用结构体变量指针来引用结构体成员得两种操作:(*结构体变量得指针名)、成员名;如:(*p1)、name;括号不能省略,、得优先级就是最高得;或:结构体变量得指针名>成员名;如:p1>name;注意、与>得优先级就是最高得;employee1、name;(*p1)、name;p1>name;就是等价得; 3,结构体数组与指针struct stu{ int stu_nu; char name[20]; float score;}student[5],*p;此时可以(1)把数组 student 得起始地址赋给 p:p =...