1. 程式人生 > >取反某一位

取反某一位

給定一整數:

int num;

給定一掩碼:

int mask; 其中mask中某一位為1,其餘為0,這一位對應num中需要被取反的位。

方法如下:

num =

(num & (~mask)) // 儲存除取反位外的其它位

|

(num ^ mask) // 所有位取反,也就是異或

所以,需要取反的位取反了,且其餘位不變