S. *_*ont 13 c# binary bit-manipulation operator-keyword
考虑这个单元测试代码:
[TestMethod]
public void RunNotTest()
{
// 10101100 = 128 + 32 + 8 + 4 = 172
byte b = 172;
// 01010011 = 64 + 16 + 2 + 1 = 83
Assert.AreEqual(83, (byte)~b);
}
Run Code Online (Sandbox Code Playgroud)
这个测试通过.但是,如果没有字节转换,它将失败,因为"〜"运算符返回值-173.为什么是这样?