为什么2147483637+1后是-2147483648

img


我这里不是直接是-0了吗
哪里有问题?
希望指出错误。
为什么2147483637+1后是-2147483648

负数已补码形式存储,有符号整型0x80000000是-2147483648,而不是-0

计算机中用补码来运算加减法,用补码计算2147483647+1得到1000 0000 0000 0000 0000 0000 0000 0000,而加法溢出的结果在范围[-214748368,2147483647]中,故可以得到结果是-214748368。
希望对题主有所帮助,望采纳!!