第8章复合数据类型第8章复合数据类型 8. 1 结构类型 枚举类型 位段结构类型 联合类型 (typedef ) ?复合类型(构造类型)由基本类型按一定的规律组合而成?C语言的复合数据类型包括数组结构类型联合类型枚举型位段 结构类型( struct ) 1. 结构类型定义的一般格式 struct 结构标识符{ 数据类型成员 1; 数据类型成员 2; :数据类型成员 n; }; 例: struct student { char name[20]; int age; float score; }; 关于结构类型定义的几点说明: 1)一个结构类型可以包括若干个数据项,每个数据项都有一种数据类型,称为结构成员。 2)结构的成员可以与程序中其它变量同名,也可以和另一个结构类型的成员同名。 3)结构类型定义的位置,可以在函数内部,也可以在函数外部,其作用域也与其定义的位置有关。结构类型有全局和局部之分。 2. 结构(变量)、结构数组、结构指针的定义(1) 直接定义(常用) : 即在定义结构类型的同时定义; 例: struct employee { char number[5]; char name[10]; int age; float wage; }emp1, emp2[10], * emp3; (2) 间接定义(常用) :先定义结构类型,然后定义结构(变量) ; 例: struct employee { char number[5]; char name[10]; int age; float wage; }; struct employee emp1, emp2[10], * emp3; (3) 一次性定义(不常用) :在定义结构类型的同时定义结构,但结构类型无类型名。例: struct { char number[5]; char name[10]; int age; float wage; } emp6, emp7[10], * emp8; 3. 嵌套结构和递归结构(1) 嵌套结构:一个结构的某些成员也是结构类型例: struct date { int year ; int month ; int day; }; struct employee { char name[20]; struct date birthday; float salary; };
复合数据类型 来自淘豆网www.taodocs.com转载请标明出处.