位运算相关(持续更新中)

1.判断一个数X是否是2的n次方。

2.代码(x&y)+((x^y)>>1)实现的功能。

答案:

1.!(X&(X-1))

2.(x+y)/2;

解析:x&y是取相同的位与,这个的结果是x和y相同位的一半,x^y是取x和y的不同位,右移相当于除以2,所以这个函数的功能是取两个数的平均值。 

原文地址:https://www.cnblogs.com/pandy/p/2205690.html