1、按位AND运算符(&)

  由于任何一位是0,&运算的结果就是0,因此可以使用这个运算符把变量中不必要的位设置成0,。其方法是创建一个‘掩码’,然后使用&将它与原始变量组合起来。如:letter=letter & 0x0F;

2、按位OR运算符(|)

  两个位中有一个位是1,OR运算的结果是1,因此这两个变量相‘或’的结果就是这两个位都被打开,如:style |= hredraw | vredraw;

3、按位EOR运算符(^)

  letter1  0100  0001

  letter2  0101  1010

  对它们进行EOR运算后得到:

  result   0001  1011

  异或运算符有一特性,俩变量在不占用任何中间存储单元的情况下交换了值。这适用于所有整数值。如:

  first ^= last;  //Result first is 0001 1011

  last ^= first;  //Result last is  0100 0001

  first ^= last;  //Result first is 0101 1010

4、按位NOT运算符(~)

  对该数的位求反,1变0,0变1.

5、移位运算符(<<)(>>)

  向左移动N位相当于这个值和2相乘N次,相当于乘于2n次方。向右移动相当于除。

posted on 2015-10-16 12:07  俗剑仙·情如梦  阅读(369)  评论(0编辑  收藏  举报