单选题 假设编译器规定int和short类型长度分别为32位和16位,若有下列C语言语句:
unsigned short x=65530;
unsigned int y=x;
得到y的机器数为______。
  • A.0000 7FFAIH
  • B.0000 FFFAH
  • C.FFFF 7FFAH
  • D.FFFF FFFAH
【正确答案】 B
【答案解析】[解析] 考查以下两个知识点。
1)怎么快速地将65530转换成十六进制?这里主要考查考生的一个逆向思维过程。考生应该记住对于16位无符号整数的最大值为65535(216-1),其十六进制为FFFFH,那么就可以很轻松地得到65530的十六进制为FFFAH(F-5=A)。
2)无符号短整型转换成无符号整型只需在高位补0即可。所以,最终得到y的机器数为0000 FFFAH。