网站设置文件夹权限,机械网站建设方案,seo网站优化及网站推广,百度指数数据分析平台入口本篇文章带来枚举与联合体相关知识详细讲解#xff01;
如果您觉得文章不错#xff0c;期待你的一键三连哦#xff0c;你的鼓励是我创作的动力之源#xff0c;让我们一起加油#xff0c;一起奔跑#xff0c;让我们顶峰相见#xff01;#xff01;#xff01; 目录
一… 本篇文章带来枚举与联合体相关知识详细讲解
如果您觉得文章不错期待你的一键三连哦你的鼓励是我创作的动力之源让我们一起加油一起奔跑让我们顶峰相见 目录
一.枚举
1.什么是枚举
2.枚举类型的定义
3.枚举的优点
4.枚举的使用
二.联合体共用体
1. 联合类型的定义
2.联合体的内存布局及特点
面试题举例
参考代码及解析 3.联合大小的计算 一.枚举 1.什么是枚举 枚举顾名思义就是一一列举 把可能的取值一 一列举 比如我们现实生活中 一周的星期一到星期日是有限的7天可以一一列举 性别有男、女、保密也可以一一列举 月份有12个月也可以一一列举 这里就可以使用枚举了。 2.枚举类型的定义 比如 其中 以上定义的 enum Day enum Sex enum Color 都是枚举类型 { }中的内容是枚举类型的可能取值也叫 枚举常量 这些可能取值都是有值的默认从0开始依次递增1当然在声明枚举类型的时候也可以赋初值。 例如 验证 也可以在声明枚举类型的时候赋初值 如 验证 当赋值了部分枚举常量时其他值的大小 比如 验证 3.枚举的优点 我们可以使用 #define 定义常量为什么非要使用枚举 枚举的优点 1. 增加代码的可读性和可维护性 2. 和#define定义的标识符比较枚举有类型检查更加严谨。 3. 便于调试 4. 使用方便一次可以定义多个常量 4.枚举的使用 二.联合体共用体 1. 联合类型的定义 联合也是一种特殊的自定义类型 这种类型定义的变量也包含一系列的成员特征是这些成员公用同一块空间所以联合也叫共用体 比如 union Un 就是一个联合体类型 n 是用该类型创建的一个联合体变量 2.联合体的内存布局及特点 分析 特征 因为联合体的特征是这些成员公用同一块空间,但是想能够存储这些联合体变量如果只开辟char 类型的大小那么a的值就存放不下了。所以这样一个联合变量的大小至少是最大成员的大小因为联 合至少得有能力保存最大的那个成员 注意对于联合体的成员在同一时间只能用一个 联合体特点代码举例 面试题举例 判断当前计算机的大小端存储 参考代码及解析 union Un
{int a;char c;
};
int main()
{union Un n;n.a 1;if (n.c 1) {printf(小端存储\n);}else{printf(大端存储\n);}return 0;
} 分析 运行结果 3.联合大小的计算 联合的大小至少是最大成员的大小 当最大成员大小不是最大对齐数的整数倍的时候就要对齐到最大对齐数的整数倍 例如 分析 验证 本章完~