用~号
int i=1;
i=~i;最后i变成-2这个过程注意补码.

解决方案 »

  1.   

    用~是不行的,仔细看了看MSDN,这个运算符号的意思是求补,如果是10进只
      

  2.   

    ~就是按位求反了啊,仔细看看!using System;
    class Test 
    {
       public static void Main() 
       {
          Console.WriteLine("!0x{0:x8} = 0x{1:x8}", 8, ~8);
          Console.WriteLine("!0x{0:x8} = 0x{1:x8}", -8, ~-8);
       }
    }
    输出
    !0x00000008 = 0xfffffff7
    !0xfffffff8 = 0x00000007
      

  3.   

    int [] i = {1};
    BitArray arr = new BitArray(i);
    arr.Not();