作业帮 > 综合 > 作业

现在windows环境下,执行"temp.i=266;printf("%d",temp.ch)"的结果是().(

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/27 14:25:25
现在windows环境下,执行"temp.i=266;printf("%d",temp.ch)"的结果是().(
union u_type
{ int i;
char ch;
float a;
}temp;
现在windows环境下,执行"temp.i=266;printf("%d",temp.ch)"的结果是(). A、266
 B、256
 C、10
 D、1
这是个共用体,他们所有成员的内存分配都一样
266表示2进制100001010;
他们是从右边开始的(低位)因此temp.ch是一个字节;就是8位
因此对齐,发现最左边的1被丢弃,剩下为00001010;为10;
你该懂吧.
我不出山好久了.