4. 모듈 규정

4. 2 헤더 파일

규정

  1. 각 소스 파일에 대해 정확하게 하나의 헤더 파일이 있어야 하며, 항상 동일한 루트 이름을 가져야 한다.
  2. 각 헤더 파일은 아래의 예와 같이 다중 include에 대응하기 위한 전처리기를 포함해야 한다.
  3. 헤더 파일에는 (프로토타입 또는 매크로, #define  typdefs를 통해) 다른 모듈과 비교해 엄격하게 알릴 필요가 있는 프로시저, 상수 및 데이터 형식만 표시해야 한다.
    • 헤더 파일에 (extern을 사용한) 어떤 변수도 선언하지 않는 것이 선호되는 관행이다.
    • 어떤 변수에 대한 저장 공간도 헤더 파일에서 할당되어서는 안된다.
  4. public 헤더 파일은 private 헤더 파일을 #include 할 수 없다.

예시

#ifndef ADC_H
#define ADC_H
...
#endif /* ADC_H */

이유

C 언어 표준은 기본적으로 모든 변수와 함수에 전역 범위 접근을 허용합니다. 이러한 단점으로 모듈간의 불필요하며 위험한 연결이 발생합니다. 모듈간 연결을 줄이려면 가능한 많은 프로시저, 상수, 데이터형 그리고 변수를 모듈내에 감춰야 합니다.

인터넷에서 추가글 'What Belongs in a C .h Header File?'을 참조하세요.

What Belongs in a C .h Header File.pdf
0.05MB

시행

이 규정은 코드 검토시 시행되어야 합니다.

'Digital Developer > Embedded C Coding Standard' 카테고리의 다른 글

[ECCS] 파일 템플릿  (0) 2020.10.17
[ECCS] 소스 파일  (0) 2020.10.17
[ECCS] 헤더 파일  (0) 2020.10.10
[ECCS] 모듈 명명 관례  (0) 2020.10.10
[ECCS] 출력되지 않는 문자  (0) 2020.10.10
[ECCS] 탭  (0) 2020.10.09

+ Recent posts