Лучший способ преобразовать 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"
Кто-нибудь может дать мне лучший код (больше скорости)?