为什么c语言负数是以补码形式存放的?

Python016

为什么c语言负数是以补码形式存放的?,第1张

为什么 C 语言负数是以补码形式存放的?

------------------

这个事,和 C 语言没有任何关系。

因为,计算机本身,它就是“用补码存储正负数字”。

C 语言的程序,在计算机中运行,也就必须“用补码存储正负数”。

而且,无论你用任何编程语言编写程序,负数,都是用补码存放的。

你的理解是对的。

最高位为1时,对于有符号来说,这个数是负数,而对于无符号数而言,由于最高位也是有效存储位,所以可以存储更大范围的数。

话再说回来,既然是无符号数,输出格式应该是"%u",而不是"%d",这样才能做到“表里如一”,“改头换面”只会乱了自己,这不是游戏,严谨是必须的。