Programming Study/C

파일의 분할과 헤더파일의 디자인

LeeWonTae 2014. 9. 5. 13:03

파일을 나누는 이유

파일을 나눠서 각각의 파일에, 용도 및 특성 별로 함수와 변수를 나눠서 저장하면 소스 코드의 관리가 용이해지기 때문이다.

 

외부 선언은 extern

다른 파일에서 접근을 못하게 하고 싶을땐 static

 

헤더파일의 디자인과 활용

#include 지시자

 - 파일의 내용을 단순히 포함시키는 용도로 사용.

 

헤더파일을 include하는 두가지 방법

1. #include <헤더파일 이름>

  - 이 방식은 표준 헤더파일이 저장되어 있는 디렉터리에서 파일을 찾게 된다.

2. #include "헤더파일 이름"

  - 이 문장을 포함하는 소스파일이 저장된 디렉터리에서 헤더파일을 찾는다.

    때문에 프로그래머가 정의하는 헤더파일을 포함시킬 때 사용하는 방식이다.

  - 이 방식을 사용하면 다음과 같이 헤더파일의 이름뿐만 아니라, 드라이브 명과 디렉터리 경로를 포함하는

    '절대경로(완전경로)'를 명시해서 헤더파일을 지정할 수 있다.

#include "C\CPower\MyProject\header.h"       //Windows 상에서의 절대경로 지정

#include "/CPower/Myproject/header.h"             //Linux 상에서의 절대경로 지정

  - 절대경로를 지정해서 헤더파일을 선언하면 다른 컴퓨터에서 컴파일 하는 일이 매우 번거로워진다.

    그래서 #include 문에서는 절대경로를 사용하지 않고 상대경로를 사용한다.

 

헤더파일에는 무엇을 담으면 좋을까?

  - 둘 이상의 소스파일로 이뤄진 프로그램에서 삽일 될 수 밖에 없는 유형의 선언들.

  - 매크로의 명령문

  - 구조체의 선언 및 정의

 

 

- 윤성우 저, 열혈강의 C프로그래밍 中 -