在C编程中收集8个字节到char

时间:2016-08-16 09:28:21

标签: c

我的.txt文件只包含01个数据。 我需要做的就是循环遍历文件,通过使用<<运算符将每个位移动到位,在无符号字符集中收集8位,然后将每个汇编的字节写入ASCII。

bit_files *tmp;
tmp = (bit_files *)malloc(sizeof(bit_files));
char a;
char byte;
FILE *first_file,*final_file;

first_file=fopen("file1","rb");
final_file=fopen("file2","wb");

tmp->bitCount = 0;

while (a=fgetc(first_file)!=EOF){
    byte=tmp->bitBuffer<<=a;
    tmp->bitCount++;
    if (tmp->bitCount==8){
        fputc(byte,final_file);
        tmp->bitBuffer=0;
        tmp->bitCount=0;
    }
}
fclose(first_file);
fclose(final_file);

0 个答案:

没有答案