c에서 제공하는 기본 헤더파일들은 이미
guard
되어 있어 중복되면 컴파일러가 무시하지만 커스텀 헤더파일은 오류를 발생시킬 여지가 있다.
같은 헤더 파일이 여러번 중복되면 프로그램에 읽힌 헤더 파일 내용이 또 포함된다.
단 구조체나 변수의 정의가 중복되면 오류가 발생한다
이 때
include guard
를 이용하여 중복을 방지한다
ifndef
,
#pragma once
등