第八章 结构体与共用体 §8.1结构体 结构体是一种构造数据类型 用途:把不同类型的数据组合成一个整体-自定义数据 类型 结构体类型定义: 合法标识苻 可省:无名结构体 struct 结构体名] 类型标识符】 成员名; 类型标识符 成员名; 成员类型可以是 struct.是关键字, 基本型或构造型 不能省略
第八章 结构体与共用体 §8.1 结构体 struct [结构体名] { 类型标识符 成员名; 类型标识符 成员名; . }; 成员类型可以是 struct是关键字, 基本型或构造型 不能省略 合法标识符 可省:无名结构体 结构体是一种构造数据类型 用途:把不同类型的数据组合成一个整体-自定义数据 类型 结构体类型定义:
例 struct student num 2字节 { int num; char name[20]; name 20字节 char sex; sex 1字节 int age, age 2字节 float score; char addr[30]; score 4字节 结构体类型定义描述结构 addr 30字节 的组织形式,不分配内存
例 struct student { int num; char name[20]; char sex; int age; float score; char addr[30]; }; name num sex age score addr 2字节 2字节 20字节 1字节 4字节 30字节 . . 结构体类型定义描述结构 的组织形式 ,不分配内存
§8.2结构体变量的定义 先定义结构体类型,再定义结构体变量 一般形式: struct 结构体名 类型标识符 成员名: 例 struct student 类型标识符 成员名: int num; }; char name[20]; struct结构体名变量名表列; char sex; int age, float score; char addr[30]; struct student stul,stu2:
例 struct student { int num; char name[20]; char sex; int age; float score; char addr[30]; }; struct student stu1,stu2; §8.2 结构体变量的定义 struct 结构体名 { 类型标识符 成员名; 类型标识符 成员名; . }; struct 结构体名 变量名表列; 先定义结构体类型,再定义结构体变量 一般形式:
定义结构体类型的同时定义结构体变量 一般形式: struct 结构体名 例 struct student int num; 类型标识符 成员名: 类型标识符 成员名: char name[20]; char sex; }变量名表列: int age, float score; char addr[30]; }stul,stu2;
定义结构体类型的同时定义结构体变量 一般形式: struct 结构体名 { 类型标识符 成员名; 类型标识符 成员名; . }变量名表列; 例 struct student { int num; char name[20]; char sex; int age; float score; char addr[30]; }stu1,stu2;
直接定义结构体变量 一般形式: struct 例 struct { int num; 类型标识符 成员名; 类型标识符 成员名; char name[20]; char sex; }变量名表列: int age, float score; 用无名结构体直接定义 char addr[30]; 变量只能一次 }stul,stu2;
直接定义结构体变量 一般形式: struct { 类型标识符 成员名; 类型标识符 成员名; . }变量名表列; 例 struct { int num; char name[20]; char sex; int age; float score; char addr[30]; }stu1,stu2; 用无名结构体直接定义 变量只能一次