C++之位操作符

位操作符:

  将其整型操作数视为二进制位的集合,为每一位提供检验和设置的功能。

~    :按位求反

<<  :左移,左移1相当于*2

    :其右操作数标识要左移动的位数,从而产生新的值,并丢弃移出去的位,在右边插入0以补充空位。

>>  :右移,右移1相当于/2

    :其有操作数标识要右移的位数,从而产生新的值,并丢弃移出去的位。

    :如果右边的操作数是无符号数,则从左边插入0;如果操作数是有符号数,则插入符号位的值或0.

注意:移位操作的右操作数不可能是负数,而且必须是严格小于左操作数的位数的值。否则无意义。

&     :位与,有0的,则与的结果为0

|    :位或,有1的,则或的结果为1

^   :异或,两位不同则为1,相同则为0

 

注意:由于系统不能确保如何处理操作数的符号位,建议使用unsigned整型操作数。

posted @ 2013-05-28 17:04  韶纥  阅读(193)  评论(0编辑  收藏  举报