第七章 结构体与共用体
第七章 结构体与共用体
■ 概述 ·定义结构体类型变量的方法 ·结构体变量的引用 ■结构体变量的初始化 结构体数组 ·指向结构体类型数据的指针 ·用指针处理链表 ·结构体变量所占内存计算 ■ 共用体 ■枚举类型 ■用ypedef定义类型
◼ 概述 ◼ 定义结构体类型变量的方法 ◼ 结构体变量的引用 ◼ 结构体变量的初始化 ◼ 结构体数组 ◼ 指向结构体类型数据的指针 ◼ 用指针处理链表 ◼ 结构体变量所占内存计算 ◼ 共用体 ◼ 枚举类型 ◼ 用typedef定义类型
(一)概述
(一)概述
概述 迄今为止,已介绍了基本类型(如整型、实型、字符 型变量等,也介绍了一种构造类型数据 数组, 数组中的各元素是属于同一个类型的。 但是只有这些数据类型是不够的。有时需要将不同 类型的数据组合成一个有机的整体,以便于引用。 这些组合在一个整体中的数据是互相联系的。 例如,一个学生的学号、姓名、性别、年龄、成绩、 家庭地址等项。这些项都与某一学生相联系。如下 图所示。 num name sex age score addr 10010 LiFun M 18 87.5 Beijing
概述 迄今为止,已介绍了基本类型( 如整型、实型、字符 型变量等),也介绍了一种构造类型数据——数组, 数组中的各元素是属于同一个类型的。 但是只有这些数据类型是不够的。有时需要将不同 类型的数据组合成一个有机的整体,以便于引用。 这些组合在一个整体中的数据是互相联系的。 例如,一个学生的学号、姓名、性别、年龄、成绩、 家庭地址等项。这些项都与某一学生相联系。如下 图所示
概述 如果将num、name、sex、age、score、addr分别定义为互相独立的简单变量, 餐容民发者新暖餐霸 项中包含有 定这样二种数据结构,它称为结构体structure)。 如: struct student int num; char name[20]; char sex; int age; float score; char addr 30]; }: 应当说明struct student是一个类型名,它和系统提供的标准类型(如int,char、 oat、double等一样具有同样的地位和作用,都可以用来定义变量的类型,只 不过结构体类型需要由用户自己指定而己
概述 如果将num、name、sex、age、score、addr分别定义为互相独立的简单变量, 难以反映它们之间的内在联系。应当把它们组织成一个组合项,在一个组合 项中包含若干个类型不同(当然也可以相同)的数据项。C语言允许用户自己指 定这样一种数据结构,它称为结构体(structure)。 如: struct student { int num; char name[20]; char sex; int age; float score; char addr[30]; }; 应当说明struct student是一个类型名,它和系统提供的标准类型(如int、char、 float、double等)一样具有同样的地位和作用,都可以用来定义变量的类型,只 不过结构体类型需要由用户自己指定而已