C 언어에서는 표준 라이브러리 헤더 파일뿐만 아니라 개발자가 직접 만든 사용자 정의 헤더 파일도 활용할 수 있습니다. 자주 사용하는 함수들을 별도의 헤더 파일로 분리해 두면 코드의 재사용성이 높아지고 관리가 한결 수월해집니다.
헤더 파일 작성 절차
- 함수 코드를 작성한 뒤 sub.h라는 이름으로 저장합니다.
- 메인 프로그램 subtraction.c를 작성하면서 다음 사항을 지켜야 합니다.
- #include 문으로 새로 만든 헤더 파일을 포함시킵니다.
- <sub.h>가 아닌 "sub.h" 형태로 작성합니다. 사용자 정의 헤더 파일은 큰따옴표로 감싸야 합니다.
- 이제 sub.h에 선언된 모든 함수를 자유롭게 사용할 수 있습니다.
- sub() 함수를 코드에서 바로 호출합니다.
- subtraction.c와 sub.h 두 파일은 반드시 같은 폴더(디렉터리)에 위치해야 합니다.
헤더 파일 예제 — sub.h
int sub(int m, int n) {
return(m - n);
}위 코드는 두 정수의 차를 계산하여 반환하는 sub 함수를 정의한 것입니다. 이 함수가 sub.h 헤더 파일에 저장됩니다.
메인 프로그램 — subtraction.c
#include<stdio.h>
#include "sub.h"
void main() {
int a = 7, b = 6, res;
res = sub(a, b);
printf("Subtraction of two numbers is: %d", res);
}메인 프로그램에서는 stdio.h와 함께 사용자 정의 헤더인 sub.h를 포함시킨 후, sub() 함수를 호출하여 두 수의 차를 계산하고 결과를 출력합니다.
실행 결과
subtraction.c를 컴파일하여 실행하면 다음과 같은 출력을 확인할 수 있습니다.
Subtraction of two numbers is: 1
정리
이처럼 사용자 정의 헤더 파일을 활용하면 여러 소스 파일에서 공통으로 사용하는 함수를 손쉽게 공유할 수 있습니다. 핵심은 사용자 정의 헤더 파일을 포함할 때 큰따옴표(")를 사용한다는 점과, 헤더 파일과 메인 프로그램이 같은 디렉터리에 있어야 한다는 점입니다.