我有两个变量:
int binary[8];
char array;
其中二进制变量只有"0s"one_answers"1s"。。。所以,我想按照来做
for (i=0;i<8;i++)
if(binary[i])
"Here I want put 1 in the position bit of the variable array"
else
"Here I want put 0 in the position bit of the variable array"
我将如何做到这一点?
如果我理解得对,这样的东西应该会起作用。。。
int binary[8];
char array = 0;
int n = 8;
while (n) {
array |= binary[--n];
array <<= 1;
}
这应该适用于CHAR_BIT
至少为8
的任何C99兼容环境。
for (int i = 0; i < 8; i++)
array |= binary[i] << i;