你好,程序运行的结果为( )?为什么?

union un { char c[2]; int a; }chang; main() { chang. a=16961; printf("%d, %c\n", chang. c[0], chang. c[0]); printf("%d, %c\n", chang. c[1], chang. [1]); }

炎炎设计
浏览 161回答 1
1回答

翻过高山走不出你

结果为65,A66,B因为a在内存中的表示为二进制0100001001000001,并与c[2]共用存储单元,其中高8位为c[1],低8位为c[0].
打开App,查看更多内容
随时随地看视频慕课网APP