二进制int到二进制char

  • 本文关键字:二进制 char int c
  • 更新时间 :
  • 英文 :


我有两个变量:

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;

相关内容

最新更新