x & 0x55555555什麼意思啊?在下面這段代碼中
int swap_bits(int x){
return ((x & 0x55555555) << 1) | ((x >> 1) & 0x55555555);
}
希望大神賜教
就是對x進行位的與運算。
((x & 0x55555555) << 1 --- 奇數位移到偶數位
((x >> 1) & 0x55555555); --- 先右移一位,等於拿到奇數位
最後swap_bits函數的意思就是以bit位格式兌換