在C中,为什么2与按位NOT运算符-3?应该是-2?

问题描述 投票:0回答:1

我不完全了解按位操作,但我不明白的是为什么〜运算符不只是将其设为负数。

c bit-manipulation negative-number
1个回答
1
投票

因为那不是它的工作方式。十进制数存储在ruby中的方式是使0几乎类似于第一个正数。例如,8位将存储从-128到127的数字,并且第一位是“标志”符号。它会反转所有bits,使其变为-3。

© www.soinside.com 2019 - 2024. All rights reserved.