C语言中short代表短整型,数值范围为-32768---32767,以下程序为什么运行后输出结果是c=32767?跪求大神解释
#include <stdio.h>
main()
{
short a,b;
short c;
a=-32768;
b=1;
c=a-b;
printf("c=%d\n",c);
}
因为用补码存储的数据,-32768在二进制存储的是1000000000000000,减去1之后就是0111111111111111,变成十进制就是32767追答
你可以百度一下补码
追问行,我去看看
温馨提示:答案为网友推荐,仅供参考