第 10 章 结构体与枚举1.结构体类型定义2.结构体使用(成员访问、整体赋值)(列表)3.结构体指针4.结构体数组5.共用体和枚举
1 1.结构体类型定义 2.结构体使用(成员访问、整体赋值) 3.结构体指针(列表) 4.结构体数组 5.共用体和枚举 第 10 章 结构体与枚举
问题引出...目前为止,学习的数据类型有:int(short,long)、float(double)、char但是,现实中,一条信息总是包含多个类型的数据,例如一个学生的信息就至少要包含:姓名 (字符串)学号 (整数)性别 (其他类型)出生日期(几个整数)各学科成绩(实数)Page2
Page 2 问题引出. 目前为止,学习的数据类型有: int(short,long) 、float(double)、char 但是,现实中,一条信息总是包含多个类型的数据,例如 一个学生的信息就至少要包含: 姓名(字符串) 学号(整数) 性别(其他类型) 出生日期(几个整数) 各学科成绩(实数)
问题引出...如果有多个重复信息,我们可以定义多个类型的数组组成学生数据库:如(假定10000名学生):char name[10000][10];int id[10000];但是这样用非常不方便,我们取某个学生信息时候还要从不同是数组中取。有没有可能将不同类型的数据放到一起,捆绑起来当一个新的数据体使用呢?Page
Page 3 问题引出. 如果有多个重复信息,我们可以定义多个类型的数组组成 学生数据库: 如 (假定10000名学生): char name[10000][10]; int id[10000]; . 但是这样用非常不方便,我们取某个学生信息 时候还要从不同是数组中取。 有没有可能将不同类型的数据放到一起,捆绑 起来当一个新的数据体使用呢?
问题引出...为此我们门希望有更加复杂的数据类型,C语言支持用基本数据类型组合形成“复杂数据类型这就是“结构体”结构体是基本条目固定不同类型的若干成员组合形成新的复杂数据类型。结构体与基本类型一样,可以定义变量,可以进行各种运算,在内存中占据一段连续存储空间。Page
Page 4 问题引出. 为此我们希望有更加复杂的数据类型, C语言支持用基本数据类型组合形成“复杂数据类型” 这就是“结构体” 结构体是基本条目固定、不同类型的若干成员组合 形成新的复杂数据类型。结构体与基本类型一样,可 以定义变量,可以进行各种运算,在内存中占据一段 连续存储空间
1、结构体类型定义struct结构体名称struct tagstudentt1cID[24];1/学号char类型名1成员名1;cName[128];//姓名charint类型名2成员名2;nScore[128]:/1成绩3;类型名n成员名n;>struct:关键字,是定义结构体类型的标志。结构体名称:标识符,其命名规则同变量名称。类型名1~n:说明了结构体成员的数据类型。成员名1~n:用户定义的一个或多个结构体成员的名称,其命名规则同变量名,多个同类型的成员彼此间用逗号分隔。Page5
Page 5 1、结构体类型定义 ➢struct:关键字,是定义结构体类型的标志。 ➢结构体名称:标识符,其命名规则同变量名称。 ➢类型名1~n:说明了结构体成员的数据类型。 ➢成员名1~n:用户定义的一个或多个结构体成员的名 称,其命名规则同变量名,多个同类型的成员彼此间 用逗号分隔。 struct 结构体名称 { 类型名1 成员名1; 类型名2 成员名2; ······ 类型名n 成员名n; };