#ifndef HEADER_H
#define HEADER_H
...
#endif
만약 HEADER_H가 이미 정의되었다면(즉, 이미 코드에 포함(include)되었다면), #ifndef 와 #endif 사이의 코드가 다시 포함되는 것을 막는다.
즉, 처음에 이 header file을 include하면, HEADER_H가 정의도지 않았으므로 코드가 포함되지만, 재차 include 하면 포함되지 않는다는 것이다.
이것을 include guard라고 한다.