2在定义结构体类型的同时定义结构体变量。例如: Struct person char name [20: int age; long tel; ]student, worker; 一般的形式为: struct类型名 成员项表列 }变量名表列; 这样定义的结构体类型也还可多次使用,如: struct person men, women;
2.在定义结构体类型的同时定义结构体变量。例如: struct person { char name[20]; int age; …… long tel; }student,worker; 一般的形式为: struct 类型名 { 成员项表列 }变量名表列; 这样定义的结构体类型也还可多次使用,如: struct person men,women;
3不定义结构体类型名,直接定义结构体变量。 一般形式为: struct 成员项表列 变量名表列;
3.不定义结构体类型名,直接定义结构体变量。 一般形式为: struct {成员项表列 }变量名表列;
结构体变量的引用 1.无嵌套的情况 引用结构体变量成员的形式为: 结构体变量名·成员名 其中的“.”叫“结构体成员运算符”,这样引 用的结构体成员相当于一个普通变量,例如: student,num /结构体变量 student的成员num,相当于一个长整型变量* student name P结构体变量 studen的成员name,相当于一个字符数组名*
结构体变量的引用 1. 无嵌套的情况 引用结构体变量成员的形式为: 结构体变量名·成员名 其中的“.”叫“结构体成员运算符”,这样引 用的结构体成员相当于一个普通变量 ,例如: student.num /* 结构体变量student的成员num,相当于一个长整型变量 */ student.name /* 结构体变量student的成员name,相当于一个字符数组名 */
2有嵌套的情况 在有嵌套的情况下,访问的应是结构体的基 本成员,因为只有基本成员直接存放数据,且数 据是基本类型或上面介绍的数组类型,引用形式 为: 结构体变量名结构体成员名…结构体成员名基本成员名 即从结构体变量开始,用成员运算符“”逐 级向下连接嵌套的成员直到基本成员,不能省略 ,例如: student, birthday year 基本成员year,相当于一个整型变量*
在有嵌套的情况下,访问的应是结构体的基 本成员,因为只有基本成员直接存放数据,且数 据是基本类型或上面介绍的数组类型,引用形式 为: 结构体变量名·结构体成员名·…·结构体成员名·基本成员名 即从结构体变量开始,用成员运算符“.”逐 级向下连接嵌套的成员直到基本成员,不能省略 ,例如: student.birthday.year /* 基本成员year ,相当于一个整型变量 */ 2.有嵌套的情况
11.2.3结构体变量的赋值 1结构体变量的初始化 在以上结构体变量的三种定义的同时都可以进行初始化 赋值,例如: struct person stud1=t Wang Li,18,M, 34011 h, 12, 13 Bejing Road, 20988771, stud2=t Yu Ping,19,F, 34082,h, 12,25 Hefei Road",5531678} 注意初始化数据应与类型中的各个成员在位置上一一对 应。对于嵌套的结构体类型变量,初始化是对各个基本类型 的成员赋初值,例如 struct person student=f Wang Li 12, 5, 1974, "M',340201,"h,12,"13 Bejing Road",2098877
11.2.3 结构体变量的赋值 1 结构体变量的初始化 在以上结构体变量的三种定义的同时都可以进行初始化 赋值,例如: struct person stud1={"Wang Li",18, 'M',34011, 'h',12,"13 Bejing Road",2098877}, stud2={"Yu Ping",19, 'F',34082, 'h',12,"25 Hefei Road",5531678}; 注意初始化数据应与类型中的各个成员在位置上一一对 应。对于嵌套的结构体类型变量,初始化是对各个基本类型 的成员赋初值,例如: struct person student={"Wang Li",12,5,1974, 'M',340201,'h',12,"13 Bejing Road",2098877};