枚举变量里面的值都是常量无法更改,主要枚举变量是声明一组命名的常数,当一个变量有几种可能的取值时,可以将它定义为枚举类型,就是说他本身其实就是一组常量数组,而像你声明的变量day1其实是整型的,和weekday无关,就算不强制转换也可以直接赋值,不信的话用sizeof查下就知道了.
所以,你说的强制转换什么的就直接不用非要命名为枚举变量没用的,而且枚举都不单独用,而是结合在类或者结构体里面的,只是起到表示判别控制用的
7 二进制 111
11 二进制 1011
day1=weekday(11);
这是取后三位011;
强制类型转换是把多余部分舍去了,若有不足则补0,这句是重点,上面是我猜的。
你写的是老老式用法,可以作为右值被隐性强制转换成int or char。
至于(11)超了,这个代码你写的是什么啊,没看懂。。。。。
有书啊!!!好好看看就可以了!!