C/C++ 位運算 常見作用總結
阿新 • • 發佈:2019-02-01
按位與 &
- 快速清零
int a=0x0001;
a&=0; //a : 0x0000
- 保留指定位
int a=0x0111;
int b=0x0010;
a=a&b; //a : 0x0010
- 判斷奇偶
int a=2;
int b=3;
//與1按位與
a=a&1; // a: 0 偶數值為0
b=a&1; //b : 1 奇數值為1
按位或 |
設定指定位的資料
int a=0x0001;
int b=0x0010;
int c=a|b; //c: 0x0011
按位異或
- 給某一位取反
int a=0x0100 ;
int b=0x0010;
int c=a^b; //c: 0x0110
- 交換數值
a=a^b;
b=b^a;
a=a^b;
左移 右移
左移 相當於 原值*2的N次
右移 相當於 原值/2的N次
其他的一些用法 可以
參考這篇部落格