C++中的位運算符用于對整數類型數據的二進制位進行操作。以下是C++中常用的位運算符及其運算規則:
按位與(&):對兩個數的每個二進制位進行與操作,只有兩個操作數對應的位都為1時,結果對應位才為1,否則為0。
按位或(|):對兩個數的每個二進制位進行或操作,只要兩個操作數對應的位有一個為1時,結果對應位就為1,否則為0。
按位異或(^):對兩個數的每個二進制位進行異或操作,兩個操作數對應位相同時結果為0,不同則為1。
按位取反(~):對一個數的每個二進制位進行取反操作,即1變為0,0變為1。
左移(<<):將一個數的所有二進制位向左移動指定位數,低位用0填充。
右移(>>):將一個數的所有二進制位向右移動指定位數,高位用符號位填充(對于有符號數,用符號位填充;對于無符號數,用0填充)。
這些位運算符可以用于進行高效的位操作,常用于位掩碼、位清零、位設置等操作。