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次方。向右移动相当于除。
时间: 2024-10-07 04:29:33