NDK启航篇——C语言基础(联合体)
- 2020 年 4 月 9 日
- 笔记
union
(比较简单)。
什么是联合体?
- 不同类型的变量,共同占一段内存(相互覆盖),联合体变量任何时刻只有一个变量存在,所以也叫
共用体
联合体的作用
- 节省内存
联合体的大小
- 联合体变量的大小等于最大的成员所占的字节数
联合体的定义
- union 名字{};
示例代码如下
union MyValue{ int y; int x; double z; }; void main(){ union MyValue d1; d1.x = 90; d1.y = 100; d1.z = 99.9;//最后一个赋值的有效 getchar(); }
enum
枚举
- 固定的数据
- 枚举就是一种数据类型
- 列举所有的情况
- 限定值,保证取值的安全性
enum Day{ Monday, Tuesday, Wednesday }; //不写默认相当于 enum Day{ Monday = 0, Tuesday = 1, Wednesday = 2 }; void main (){ //枚举的值必须是括号中的值 enum Day d = Monday; printf("%#x,%dn",&d,d); /* int i = 0; enum Day *p = &d; for(;i<3;i++){ printf("%#x,%dn",p,*p); p++; }*/ getchar(); }