当0的补数被发现时,结果是-1。为什么0的补数是-1?它总是-1还是取决于编译器?
hvvq6cgz1#
0的按位求反,在C中写成~0,只有当编译器使用two's complement来表示有符号整数时才是-1。因此,这是编译器表示数字的方式的结果,通常不是“真”。
~0
b4wnujal2#
在Two's complement中为-1,编译器可以自由选择其他表示法。
2条答案
按热度按时间hvvq6cgz1#
0的按位求反,在C中写成
~0
,只有当编译器使用two's complement来表示有符号整数时才是-1。因此,这是编译器表示数字的方式的结果,通常不是“真”。b4wnujal2#
在Two's complement中为-1,编译器可以自由选择其他表示法。