C++数据类型之共用体Union & 枚举
共用体是一种数据格式,能够存储不同的类型,但只能存储其中的一种类型
一、声明
union one4all
{
int int_val;
long long_val;
double double_val;
}
二、初始化
one4all pail;
pail.int_val=4;
pail.double_val=20.06;
枚举提供了一种创建符号常量的方式
一、声明
enum spectrum {red, orange, yellow, green, blue, violet, indigo, untraviolet};
二、初始化
spectrum band;
band = blue; // valid
band = 2000; //invalid,
枚举量是整形,整形不能转为枚举类型,即不能做缩窄操作
三、设置枚举的值
enum bits{one = 1; two = 2; four=4; eight = 8};
enum bigStep{first,second=100,third}; // third = 101
enum {zero, null = 0; numero_uno = 1};
四、枚举的取值范围
1.上限 大于这个最大值的2的幂,减1,比如101,大于这个值的最小的2的幂是128, 因此上限是127
2.下限 最小小于0,则为0,否则类似与上限一样,找到这个值,再加上负号,如-6,应该是-7(8-1,加负号)
浙公网安备 33010602011771号