zgfp.net
当前位置:首页 >> unsignED32768 >>

unsignED32768

这要根据不同的编译器; 有些编译器上无符号整型是2字节16位,VC6.0是4字节32位; 如果是在2字节16位的编译器上的话: %d表示的是有符号输出,它不管你的变量是有符号还是无符号的 面%u是无符号整型输出的正确方法 所以,上面的输出是一个负数,...

你这是十六位机上的情况。在十六位机上unsigned的范围是0~65535,而 printf("a=%d\n", a)中的%d却要求要将a按带符号整型数输出,32768的无符号二进制数是1000 0000 0000 0000,刚好是带符号数-32768的补码,所以答案是A)。现在的int类型已扩展到...

main() {unsigned a=32768; //unsigned存储的数据范围是0~65535 int b; b=a; printf("b=%d\n",b); //所以结果是 32768 }

根据题目的设计, 应该是16位机,即int占2字节. 这样 在赋值 m=32768=0x8000; 最高位为1 按照%d输出,会把最高位作为符号位,所以实际输出的是-32768 下面答案应该是打错了.

a本来是32位,返回a的在高16位中除了符号位之外的15位(除去符号位)。 a/65535(等价于a/2^16),即右移16位,高位补上符号位。 再继续%32768(等价于%2^15),即取低15位,不包括符号位。 然后来个类型转换,去掉符号位(其实不需要类型转换已经可...

各种无符号类型量所占的内存空间字节数与相应的有符号类型量相同,但由于省去了符号,故不能表示负数。 例如:有符号整形变量最大是32767,无符号整形变量最大是65535。

请问你用的是什么样的编译器: 我用的是MS-VS05.此时 由于unsigned short 表示的数值范围为 0~65535。它占用两个字节16位,并不会截断。 结果如下: 32768 请按任意键继续. . . 解释如下: 32768的二进制补码为: 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0...

无符号整型unsigned[int] 0~4294967295短整型 short [int] -32768~32768无符号短整型unsigned short[int] 0~65535长整型 Long int -2147483648~+2147483648无符号...

它们的范围不同,int有符号的是:-32768~32767 unsigned short无符号短整型0~65535 也有说unsigned short无符号短整型0~32767不过一般的都是上面的那个

一般情况是的。 在现在的32位计算机上int一般就是32位的。至少VC里是这样。 16位的signed short int 范围是-32768~32767 16位的unsigned short int 范围是0~65535 32位的signed long int 范围是-2^31~2^31-1 32位的unsigned long int 范围是0~2^...

网站首页 | 网站地图
All rights reserved Powered by www.zgfp.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com