![有以下程序:main(){ union{ char ch[2];,第1张 有以下程序:main(){ union{ char ch[2];,第1张](/aiimages/%E6%9C%89%E4%BB%A5%E4%B8%8B%E7%A8%8B%E5%BA%8F%EF%BC%9Amain%28%29%7B+unio%26amp%3B%23110%3B%7B+char+ch%5B2%5D%EF%BC%9B.png)
问题:
[单选]
有以下程序:
main()
{ union
{ char ch[2];
int d;
}s;
d=0x4321;
printf("%x,%x\n",S.ch[0],S.ch[l]);
}
在16位编译系统上,程序执行后的输出结果是( )
A . 21,43
B . 43,21
C . 43,00
D . 21,00
正确答案:A
参考解析:s是一个公用体,d的值分别与ch中的两个元素的值相同,d的高位放在chFl]中、低位放在chl-0] 中,因此输出的结果为21,43。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)