现在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
来源:学生作业帮助网 编辑:作业帮 时间:2024/12/01 18:41:36
xRmKP+C0| `&?¬pPsʴҔ,%L2ELՏ鞻ɿٵOm_s܇CVʍmQZm'\)Twڦff9.Jz&V=<;Dn9-bܒĘm-'w]9QDq.7b$
a,e[1Dv"+qߘϤG3`7F4q#adv%aL.fCXk#E<]Z֨B7@&
"~:ODWh)aw?~F5^
OP3G,R6<)}|R,2a7:}3Yce>PvU0R
现在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
现在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
现在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;
你该懂吧.
我不出山好久了.