我在寻找什么?
让我们考虑int a = 5
例如
它的二进制文件是:101
所以当我们做的时候
a >> 1
然后最右边的位,即在这种情况下为1,将掉落,我想在某个变量中捕获它......,
1st iteration k = 1
2nd iteration k = 0
3rd iteration k = 1
在这种情况下,我有一个硬编码值,但它可以是数字的任意用户输入。
如果我b = a >> 1
,那么b= a/2
就这么无能为力!
为什么我会问这个问题?
例如,将程序转换为十进制转换为二进制,在这种情况下,如果我能够捕获下降位,那么程序将在最多3-4行完成... < / p>
当然还有其他逻辑,我需要知道它是否可能!
答案 0 :(得分:7)
在移位之前将最低位存储在变量中,例如,
int a = 5;
int lowestBit = a & 1;
a >>= 1;