99问答网
所有问题
当前搜索:
为什么32768输出为负
...a=
32768
; printf("a=%d\n",a); }
为什么
结果是:a=-32768
答:
unsigned a 默认为unsigned int a 范围为 65535 因此 你的溢出了 所以变成了 -32768 如果你把声明修改为signed int a 就会正确
输出32768
VC之所以显示正确是因为它是32位编译器,int为4个字节,而 TC是一个16位编译器,int只有2个字节。--- 此题是考整数的存储方式--二进制补码,你只要熟...
c语言第十八题
为什么输出
结果
是负
的?
答:
short是16位二进制,它的十进制范围是-
32768
~32767。b=a+1=32767+1=32768就溢出了,使D15位(就是最高位)变成了1。但
输出是
按%d格式(即32位有符号十进制)的,所以要把符号位向前扩展16位变成32位数字(16进制FFFF8000),这刚好是十进制数-32768的补码。
为什么
这个程序结果
是
-
32768
不是+32767呢?
答:
那么
负数
在计算机的存储中以补码形式存储,所以1000 0000 0000 0000
是
该负数的补码,所以这个负数就是-
32768
一道C语言问题 会的人麻烦解释一下
答:
计算机中
是
以2进制补码形式存储数据的。8位的机器中int型占2个字节,可存储的int范围为-
32768
~32767 。你的k=32768,存储到计算机中就是0x10000000 00000000(注意:最高位为符号位),这和-32768在计算机中存储的数据是一样的。所以
输出
的时候就会显示-32768 。
负数
的补码算法见下面的衔接:http://z...
unsigned int a=
32768
;
答:
VC上
是32768
因为unsigned的32768在内存中存的是10000000 00000000,在用%d
输出
的时候,会把这个数认为是一个int型有符号数,而int型有符号数中只有-1在内存中也是10000000 00000000。所以是-1 而在VC上,
32768是
00000000 00000000 10000000 00000000(四个字节)。int型是四个字节,它不认为这是一个有...
main() { unsingned a=
32768
; int b; b=a; printf("b=%d\n",b); }...
答:
说的差不多 int b=
32768
;由于某些系统中int的最大值是32767,最小值
是
-32768,所以你这样一用,只能从-32768到32767给你选一个对应的数,而-32768和32768关于65536同余,同余在计算机里面也可以理解为相等。
main () {unsigned a=
32768
; printf("a=%d\n",a); }
答:
这要根据不同的编译器;有些编译器上无符号整型是2字节16位,VC6.0是4字节32位;如果是在2字节16位的编译器上的话:d表示的是有符号输出,它不管你的变量是有符号还是无符号的 面%u是无符号整型输出的正确方法 所以,上面的
输出是
一个
负数
,即-
32768
存储时机器码是这样的1000000000000000一共16位...
关于C语言基础的问题,要求解过程7
答:
int 和 unsigned short 的范围 short int 短整型 -
32768
~ 32767 unsigned short int 无符短整型 0 ~ 65535 32768在unsigned short中还没有超出范围 但在 short int 中超出范围,short b=a; 这句话使得32768强行赋给 short 类型的b 溢出,溢出的值 在计算机中是循环的 所以就变成了 -32768 ...
...a=
32768
;执行语句printf(“a=%d”,a);后
输出
的结果
为什么
答:
short只有两字节空间. 最高位为符号位.赋值a=
32768
=0x8000 最高位为1, 代表
负值
.a实际值为-32768(补码转换)当%d
输出
时,转为int型 还是-32768 所以输出就
是
这个值了.
符号位问题近来看下
答:
32768
无符号二进制是1000000000000000(15个0)而用%d有符号的
输出
时,这段数据代表的数是:最高位为1,符号
为负
其绝对值为:逐位取反再加1得(补码的计算方法)0111111111111111+1 = 1000000000000000 =32768 所以,其值为 -32768
1
2
3
4
5
6
7
8
9
10
涓嬩竴椤
灏鹃〉
其他人还搜
lm358输出为负
32768是什么
32768开3次方怎么算
32768怎么来的
32768是2的多少次方
2的几次方等于32768
输出是正还是负
如何输出负脉冲
负脉冲输出