기본 콘텐츠로 건너뛰기

라벨이 전처리기인 게시물 표시

전처리기

컴파일러에 앞서서 사용자가 정의한 각종 내용을 미리 처리한다. 반드시 #으로 시작하며 문장의 끝에는 세미콜론이 붙지 않는다. 소스 파일의 첫 부분에 위치하며, 첫 칸부터 시작해서 입력하고 한 줄에 하나씩의 명령을 입력한다. #include 헤더파일 등을 포함. 컴파일러의 기본 경로에 있는 파일은 < >안에, 현재 소스의 경로에 있는 때에는 " "안에 파일명을 입력한다. #define 매크로를 정의. 선행처리기는 매크로와 대응하는 내용을 빈칸을 통해서 구분한다. 매크로 상수 1 #define PI 3.141592 매크로 함수 1 #define SQUARE(x) ((x)*(x)) 2 #define PRINTOUT(x) printf(#x) 매개변수에 따옴표를 포함시키려면 #을 붙인다. #if, #elif, #else, #endif, #ifdef, #ifndef 조건부 컴파일 1 #if 조건1 2 문장 1 3 #elif 조건2 4 문장 2 5 #else 6 문장 3 7 #endif   내장된 매크로 __DATE__ 컴파일 날짜 __TIME__ 컴파일 시간 __LINE__ 소스 코드의 줄번호 __FILE__ 현재 소스 파일의 이름 Example : 1 #include <stdio.h> 2 3 /* 4 매크로 함수 5 */ 6 #define PRINTLN(x) printf( "%s \n " ,x) 7 #define PRINTOUT(x) printf(#x) 8 9 int main () 10 { 11 char str1 [] = "String 1." ; 12 13 PRINTLN ( str1 ); 14 PRINTOUT ( String 2 .); 15 16 system ( "PA...