#include 
#include 
#define MAX 100
FILE* fpt;
const char arr[MAX] = "";
int binarymaker(int n);
void main(const int n, const char* filename[MAX])
{
    if(n != 2) // Inputted file name checker
    { printf("Error"); exit(0); } 
    
    char arr[MAX] = "";
    fpt = fopen(filename[1], "rb");
    int ch;
    while( ( ch = fgetc(fpt)) != EOF)
        binarymaker(ch);    
    fclose(fpt);
}
int binarymaker(int n)
{
    if(n == 0)
    { printf("0"); return 0; }
    if(n == 1)
    { printf("1"); return 0; }
    
    binarymaker(n / 2);
    if(n % 2 == 0)
    printf("0");
    if(n % 2 == 1)
    printf("1");
    
}
/* 파일 스트림에 대해 막 배우고 있는 프로그래밍 초보입니다.
파일 내용을 binary로 보고 싶어서 int형 정수를 한 글자씩 argument로 받아서 
한 글자씩 바이너리로 출력하는 함수를 만들었습니다.
그런데 텍스트 파일은 문제없이 출력되는데, 
용량이 조금 큰 파일부터는 아예 도중에 출력이 멈추네요. 
왜 그런지 이유를 알고싶습니다. 스택이 다 차서 프로그램이 강제로 종료되는건가요?
(아직 비트연산자를 배우기 전 단계라 이렇게나마 binary로 출력하는 함수를 만들 수 밖에 없었습니다) */