2014-04-26 2 views
0

압축 프로그램을 작성하려고하는데 비트를 화면에 인쇄 할 때 로직이 잘 작동하지만이 비트를 파일에 넣으려고합니다. 나는 이것을 char에 저장하고 그 char을 출력함으로써 이것을한다. 이 메소드는 공백 (0010 0000)이나 탭 (0000 1001) 이외의 모든 문자에 대해 작동합니다. 파일에 공백이나 탭을 출력하는 방법이 있습니까?C 바이트를 파일로 출력 프로그래밍

void writeByte(char byte, FILE *comp){ 
    fputc(byte,comp); 

} //writing byte to file 

void writeBit(int bit, FILE *comp){ 
    if(ind >= 0){ 
     byte|= (bit<<ind); 
     ind--; 
    } 
    else{ 
     writeByte(byte,comp); //write byte to file 
     reset(); 
     writeBit(bit,comp); 
    } 
    //printf("%d\n", bit); 

} //storing bits in a byte 
+1

당신은 단순히 'fputc''ing that * not * works라고 생각하게합니까? – dmckee

+0

파일의 크기를 확인했습니다. 테스트 파일에는 두 개의 공백이 있는데 압축시 달러와 공백을 사용해야하지만 $ 만 출력됩니다. – Roosh

답변

0

나는 이것을 처리했다. 문자열의 끝을 나타내는 null 문자를 추가해야했습니다.