Лучший способ преобразовать 8 логических в один байт?

Я хочу сохранить 8 логических значений в один байт, а затем сохранить их в файл (эту работу необходимо выполнить для очень больших данных), я использовал следующий код, но я не уверен, что он лучший (с точки зрения скорости и пространства):

int bits[]={1,0,0,0,0,1,1,1};
char a='\0';
for (int i=0;i<8;i++){
  a=a<<1;
  a+=bits[i]
}
//and then save "a"

Кто-нибудь может дать мне лучший код (больше скорости)?

Ответы на вопрос(0)

Ваш ответ на вопрос