11问答网
所有问题
linux下c的用printf输出int型最大值为什么不是65535,也不是65535的平方?unsigned long int和int型一样?
在linux下C int型是四个字节,也就是32位,可为什么printf能输出的%d最大为2的31次方-1,%x就是可以输出2的32次方-1?
举报该问题
其他回答
第1个回答 2008-04-22
一般int是4个字节。
问题是C并没有规定int/unsigned long int型的字长,要看你机器的字节长度还有编译器的。
而且64位的话应该是8个字节。
相似回答
...a; int b=-1; a=b;
printf
("%u",a); }
为什么不是65535
答:
65536那是16位机
,int
占2字节,现在的系统最低都是32位。。。
大家正在搜
相关问题
c语言中%u范围是0-65535,为什么输出是65535
在C语言中,unsigned int a=65535 ; …...
在C语言中为什么unsigned int 取值为65535不...
unsigned int a=65535; printf("...
c语言问题 int不是4个字节吗? 为什么要输65535以内...
unsigned int a=65535,printf("%...
为什么无符号整型数值最大只能是65535,而不是65536
unsigned u=65535 printf("%d",u...