c++之共同体定义之输出

img


看不懂题目的意思?不知道要怎么理解?对 现在执行temp.i=266不明白,这算是赋值吗?而且后面为什么要这样子问 int (temp.ch)的值为_为什么前面要加个int,不加int有什么区别?

i跟ch共用4个字节内存,低位的1个字节是ch
i=266,二进制 0001 0000 1010
ch则为 0000 1010,转10进制为10

int (temp.ch)是吧char类型转为int类型,ascii为10的字符是回车符。

共用体,顾名思义,就是内部变量会被共用的意思,当改变了temp.i的值, temp.ch也会改变,
所以这时候ch的值就等于i的值,答案是A