C언어는 컴파일러에 의해 소스파일(*.c)이 목적파일(*.obj)로 변환될때 바이너리 파일, 즉 0과 1로 이루어진 코드로 변환된다.즉, 컴파일 후에 이미 컴퓨터가 이해할 수 있는 이진코드로 변환되는 것이다. 목적파일은 기본적으로 컴퓨터가 이해할 수 있는 바이너리 코드(이진 코드)의 형태이지만 실행될 수는 없다. 그 이유는 완전한 기계어(CPU에서 사용하는 명령어 집합)이 아니기 때문이다. 변환된 목적파일은 링커에 의해 실행 가능한 실행파일(*.exe)로 변환될 때 함수나 헤더 파일 등의 실제 메모리 주소를 코드에 반영하는 과정에서 일부 주소값이 변경되는데, 이러한 과정을 거쳐야 비로소 컴퓨터가 바로 실행 할 수 있는 100% 기계어가 될 수 있다. 결론적으로 목적파일은 바이너리 코드이지만 컴퓨터가 바..