有如下C语言程序段: 执行上述两条语句后,usi的值为( )。

admin2017-08-16  14

问题 有如下C语言程序段:

执行上述两条语句后,usi的值为(          )。

选项 A、一32767
B、32767
C、32768
D、32769

答案D

解析 结合题干及选项可知,short为16位。因C语言中的数据在内存中为补码表示形式,si对应的补码二进制表示为:1000 0000 0000 0001B,最前面的一位“1”为符号位,表示负数,即-32767。由signed型转化为等长unsigned型数据时,符号位成为数据的一部分,也就是说,负数转化为无符号数(即正数),其数值将发生变化。usi对应的补码二进制表示与si的表示相同,但表示正数,为32769。
转载请注明原文地址:https://kaotiyun.com/show/PDRi777K
0

相关试题推荐
最新回复(0)