如果把-129存进char变量里,打印出来的就是127
char a=-129;
printf("%d",a) ; 会输入多少?? 结果为127 ,为什么呢?
-129在补码为10 0111 1111 只取后八位存储,即 0111 111 这个值刚好是127了,
-128的补码是1 1000 0000(只取八位) -1的补码为1111 1111
1 1000 0000 ------------------------------ -128
1111 1111 ----------------------------- -1
-----------------------------
10 0111 1111 --------------------------- -129(只取八位,则是127)