C 언어 - 전처리기란 ?

컴퓨터/C

728x90
반응형

전처리기(Preprocess)란? 

C언어를 이용해서 프로그램을 만들게 되면 프로그래머가 작성한 소스코드를 컴파일(기계 어화)을 하여 프로그램이 완성됩니다. 그렇다면, 프로그래머가 하나부터 열까지 모든 부분을 소스코드에 작성할까요? 그렇지 않습니다. 외부에서 제공, 또는 만들어진 라이브러리를 블러 온다던가 , 컴파일러의 환경을 지정해준던가 , 소스코드에 어떤 특정한 키워드를 만들어주던 다양한 준비과정이 있습니다. 이 이후에 소스코드를 작성하고 컴파일을 해서 프로그램이 완성되는 것입니다. 

즉 전처리기는 본 프로그래밍 소스코드 작성 및 컴파일을 하기 전에 하는 작업들을 일컫습니다.

 

이 전처리기는 다양한 키워드로 구성되어 있으며 이미 익숙한 전처리기 키워드도 있을 것입니다.

 

전처리기 키워드(지시자) 알아보기

전처리기 키워드는 소스코드 어느 곳에서든 사용할 수 있습니다. 하지만 전처리기 키워드를 사용한 이후 내용부터는 전처리기에서 작성한 내용들이 적용됩니다. 

전처리기는 항상 소스코드 최 상단에 위치하는 것이 일반 적입니다. 말 그대로 '전' 처리기 이기 때문입니다. 

전처리기 키워드는 #을 통해 시작을 하며 뒤에 ;을 붙이지 않는 특성이 있습니다. 종류는 다음과 같습니다.

 

  • #include
    • 포함시키다의 의미로 외부에서 선언된 다양한 파일, 소스코드, 라이브러리를 포함시킬 때 사용합니다.
  • #define
    • 정의한다는 의미로 함수나 상수들의 심볼릭화, 매크로화 다양한 인자들에 대한 정의를 해줄 때 사용합니다.
  • #undef 
    • #define으로 정의된 내용들을 삭제하기 위해 사용합니다.
  • #pragma
    • 프로그램의 이식성을 위해 특수한 상황을 컴파일러에게 알려줄 때 사용합니다.
  • #if / #ifdef / #ifndef, #elif, #else, #endif
    • 조건부 컴파일 지시 키워드로 컴파일러에게 소스코드의 컴파일 영역을 알려줍니다.

 

전처리기의 중요성

전처리기를 잘 사용한다면 불필요한 소스코드를 줄여 좋은 소스코드 구성을 만드는데 도움을 줄 수 있습니다.

또한 컴파일러에게 가장 최적의 환경을 제공해 줄수 있기 때문에 프로그램을 만드는 과정에서도 좋은 효과를 줄수 있게 됩니다. 전처리기의 개념을 숙지하고 다양한 환경에서 사용되는 전처리기들에 대해서 이해하시길 바랍니다.

728x90
반응형

Commnet

G91개발일지

Gon91(지구일)

91년생 공학엔지니어의 개발일지

TODAY :

YESTER DAY :

TOTAL :