我是个菜鸟,但有Java和Python方面的经验。
我现在正在做一个关于位操作的作业,找到了一个指导我怎么做的指南,问题是我不太明白。

c=(c&(1<<n))>>n;

c=无符号字符
n=整数,表示c的第n位。
我理解和逻辑门,我也知道它是如何工作的。
我知道<>=右移。
然而,我无法理解这一切是如何一起工作的。
有人能解释一下这段代码是如何执行的,以及它是如何返回第n位的吗。

最佳答案

这段代码主要检查第n位是否已设置。
1你也可以。
!!(c&(1<<n))
同样的效果

关于c - 有人可以解释一下位操作的这一小片段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19307877/

10-11 21:32