如果我想将二进制转换为十进制,有没有办法做到这一点:
假设:
newState[i-2] = 0,
newState[i-1] = 0,
newState[i] = 1
binary = newState[i-2], newState[i-1], newState[i]; // but if I did this, bin = 0, not 001.
我想这样做,所以我可以将二进制传递给另一种方法以转换为十进制。
最佳答案
您可以使用位旋转(假设newState[N]
为0或1):
binary = (newState[i-2] << 2) |
(newState[i-1] << 1) |
(newState[i]);
关于c - 给变量赋值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2367505/