1. 结构体
1.1 结构体的基本概念
- 我们学过一种集合——数组,但是数组仅仅是同种类型元素的集合。结构体也是一类集合,但是它的元素类型可以不一样,我们把这些元素叫做结构体成员变量。我们通常把结构体类型称为自定义类型。
1.2 结构体的声明
1.3 结构体的特殊声明
1.4 结构体的自引用
1.5 结构体变量的定义和初始化
1.6 结构体变量的数据输出
1.7 结构体的内存对齐
1.8 修改默认对齐数
1.9 结构体传参
2. 位段
- 结构体是有能力实现位段的。位段的成员必须是整形家族。
2.1 位段的声明
2.2 位段的内存分配
3. 枚举
3.1 枚举的基本概念
- 顾名思义枚举就是列举,把可能的取值列举出来。
例如在我们的生活中,周一到周日是有限的七天,可以一一列举。
3.2 枚举的定义
3.3 枚举的使用
3.4 枚举的优点
我们本可以使用 #define 来定义常量,但为什么要使用枚举?
- 增加代码的可读性和可维护性
- 和 #define 定义的标识符比较,枚举有类型检查,更加严谨
- 防止命名污染
- 便于调试
- 使用方便,一次可以定义多个常量
4. 联合(共用体)
4.1 联合的基本概念
- 联合体也是一种特殊的自定义类型。
- 这种类型定义的变量也包含一系列成员,特征是这些成员共用一块空间