gpt4 book ai didi

c - 用按位运算符编写的这个条件到底有什么作用?

转载 作者:太空宇宙 更新时间:2023-11-04 00:48:48 25 4
gpt4 key购买 nike

以下条件在 C 中有效地检查了什么:

if(a & (1<<b)) 

我绞尽脑汁也找不到规律。有什么帮助吗?我也看到它在竞争性编程中使用了很多,谁能解释一下何时以及为什么使用它?

最佳答案

它正在检查是否 b a 的第 1 位已设置。

1<<b将移过单个设置位 b次,因此 b 中只有一位位置已设置。

然后 &将执行按位与。因为我们已经知道在 1<<b 中设置的唯一位, 或者在 a 中设置,在这种情况下我们得到 1<<b ,或者不是,在这种情况下我们得到 0 .

关于c - 用按位运算符编写的这个条件到底有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27363063/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com