在第i个位置切换一个比特位。

9

2个回答

4

n ^= 1U << i 相对来说还是比较简单的,不是吗?


-1

你可以这样做

pow(2, i) ^ n

1
你需要将 pow 的(不精确)结果转换为 int 才能使其正常工作。 - Mark Elliot
1
不行,你不能这样做。pow返回的是一个双精度浮点数,不是^运算符的有效参数。而且pow也不能保证给出一个精确的结果。 - Stephen Canon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接