我已经看到这个代码使用AND位运算符将十进制转换为二进制,并将生成的二进制数放在一个数组中以便稍后迭代它。因为我是C的新手,我无法想象代码
例如,如果我们有十进制的数字(13),它等于二进制的(1101)...这个for循环中究竟发生了什么?!
答案 0 :(得分:2)
循环屏蔽n的一位并写入' 0'或者' 1'到char缓冲区,取决于它的状态,从最重要的位开始。
答案 1 :(得分:0)
在循环中,它将检查每个位,确定它是设置还是清除。如果设置了位,它将写入' 1'在相应索引处的数组中,或者如果位清零,则它将写入' 0' 0在各自索引的数组中。