6種位運算:
&按位與
|按位或
^按位異或
~取反
<<左移
>>右移
按位與運算
按位與運算符"&"是雙目運算符。 其功能是參與運算的兩數各對應的二進位相與。只有對應的兩個二進位均爲1時,結果位才爲1 ,否則爲0。參與運算的數以補碼方式出現。
按位或運算
按位或運算符“|”是雙目運算符。 其功能是參與運算的兩數各對應的二進位相或。只要對應的二個二進位有一個爲1時,結果位就爲1。參與運算的兩個數均以補碼出現。
按位異或運算
按位異或運算符“^”是雙目運算符。 其功能是參與運算的兩數各對應的二進位相異或,當兩對應的二進位相異時,結果爲1。
參與運算數仍以補碼出現。
求反運算
求反運算符~爲單目運算符,具有右結合性。 其功能是對參與運算的數的各二進位按位求反。
左移運算
左移運算符“<<”是雙目運算符。左移n位就是乘以2的n次方。 其功能把“<<”左邊的運算數的各二進位全部左移若干位,由“<<”右邊的數指定移動的位數,高位丟棄,低位補0。
右移運算
右移運算符“>>”是雙目運算符。右移n位就是除以2的n次方
交換兩個值,不用臨時變量. 我們可以在不用引入其他變量就可以實現變量值的交換 用異或操作可以實現:
a = a^b; //(1)
b = a^b; //(2)
a = a^b; //(3)