为什么等于-126?c语言
为什么等于-126?c语言
日期:2021-11-11 01:38:54 人气:1
无头无尾的
脑补一下吧
估计是这样的
char c = 0x82;
printf("%d\n", c);
类型和数值可能有变化,但大致应该是在这样
定义为有符号类型,比如char int long等等,最高位会当做符号位
比如char占一个字节,0x82转为2进制为10000010
最高位符号位,代表为负数,真实值位其余位按位取反加一
即1111101+1=1111110=0x7E=12
脑补一下吧
估计是这样的
char c = 0x82;
printf("%d\n", c);
类型和数值可能有变化,但大致应该是在这样
定义为有符号类型,比如char int long等等,最高位会当做符号位
比如char占一个字节,0x82转为2进制为10000010
最高位符号位,代表为负数,真实值位其余位按位取反加一
即1111101+1=1111110=0x7E=12