执行以下程序后,x的值为( )。 unsigned int x=65535; printf("%d\n",x);

admin2010-05-22  20

问题 执行以下程序后,x的值为(  )。    unsigned int x=65535;    printf("%d\n",x);

选项 A、65535
B、1
C、有错误
D、-1

答案8

解析 x变量定义为无符号整型。格式控制符d是输出带符号的十进制整数,即输出-1。65535在内存中各位都为1,作为带符号数输出时最高位为1即数值为负。在内存中数据都以其补码形式保存,11111111变为原码为10000001即-1。
转载请注明原文地址:https://jikaoti.com/ti/uLI0FFFM
0

最新回复(0)