1.判斷奇偶數
a&1=0; //偶數
a&1=1; //奇數
2.求平均值
(a&b)+((a^b)>>1); //a和b的平均數,結果爲整型數
3.判斷是否爲2的冪
((x&(x-1))==0)&&(x!=0); //1爲是,0爲不是
4.交換兩個整數
a^=b^=a^=b; //交換a和b的值
5.計算絕對值
int abs(int x) {
int y;
y = x >> 31;
return (x ^ y) - y; //或者(x+y)^y
}
6.2的n次方
1<<n; //表示2的n次方
7.乘以2的n次方
a<<n;
8.除以2的n次方
a>>n;
9.求相反數
(~x+1); //x的相反數