더북(TheBook)

이제 기계어가 생성되었으니 컴퓨터가 소스 코드의 의미를 이해할 수 있겠지요? 그러나 아직 끝난 것이 아닙니다. 우리가 작성한 소스 코드에 있는 printf()라는 명령어가 보이나요? 이 명령어는 뒤에서 배우겠지만, 출력을 하는 함수입니다. 그러면 이런 명령어들은 도대체 누가 만들었을까요?

이미 오래 전부터 C 언어 개발자들이 다 만들어 놓았고 우리는 만들어진 명령어를 그저 사용하면 됩니다. 이렇게 자주 사용하는 명령어를 미리 만들어서 모아둔 파일을 헤더 파일이라고 합니다.

printf() 함수는 stdio.h(standard input/output, 범용 입/출력)라는 헤더 파일에 그 내용이 저장되어 있습니다. 즉, printf() 함수를 사용하려면 stdio.h 파일을 소스 코드에 포함시켜야(include) 하는데, 그 명령이 바로 첫 번째 줄에 있는 #include <stdio.h> 문장입니다.

기계어로 작성된 목적 파일은 링크(link), 즉 연결 과정을 거칩니다. 연결 과정이라는 의미는 헤더 파일을 내가 작성한 소스 코드에 연결한다는 의미입니다. 헤더 파일을 연결하고 이제 내 프로그램에 싣는 로더(loader) 과정까지 거치고 나면 비로소 소스 코드는 실행될 준비를 모두 갖춘 상태가 됩니다. 그런 다음 파일 확장자가 *.exe인 실행 파일(execution file)이 생성되어 소스 코드의 수행 결과가 화면에 나타나는 것입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.