조건부 컴파일, 조건부 컴파일 방법

CODEDRAGON Development/C, C++

반응형

   


 

조건부 컴파일

·         특정 조건에 만족할 때만 코드가 컴파일되게 합니다.

·         매크로 상수를 검사하여 조건부 컴파일을 수행합니다.

 

 

조건부 컴파일 방법

·         #if~#endif

·         #if~#else~#endif

·         #if~#elif~#else~#endif

·         #ifdef~#endif #ifndef~#endif

 

 

#if ~ #endif 기본 형식

#if(CODE==1)

        result=num1/num2;

        printf("연산 결과: %lf\n", result);

#endif

 

전처리 지시자

#if

#endif

조건부 컴파일 수행 문장을 #if #endif 묶음

조건식

(CODE==1)

컴파일을 수행하기 위한 조건을 지정

컴파일 문장

result=num1/num2;

printf("연산 결과: %lf\n", result);

조건식이 ‘참’일 컴파일해야 하는 문장 삽입

 

 

 

 

#if~#else~#endif 기본 형식

#if(CODE==1)

        result=num1/num2;

        printf("나눗셈 결과: %lf\n", result);

#else

        result=num1*num2;

        printf("덧셈 결과: %lf\n", result);

#endif

 

전처리 지시자

#if

#else

#endif

조건식

(CODE==1)

컴파일 문장

result=num1/num2;

printf("나눗셈 결과: %lf\n", result);

result=num1*num2;

printf("덧셈 결과: %lf\n", result);

 

 

 

 

#if~#elif~#else~#endif 기본 형식

#if(CODE<0)

        result=num1/num2;

#elif(CODE==1)

        result=num1*num2;

#else

        result=num1-num2;

#endif

printf("연산 결과: %lf\n", result);

 

전처리 지시자

#if

#elif

#else

#endif

조건식

(CODE<0)

(CODE==1)

컴파일 문장

result=num1/num2;

result=num1*num2;

result=num1-num2;

printf("연산 결과: %lf\n", result);

 

 

 

 

#ifdef ~ #endif 기본 형식

매크로 상수 ADD 정의 되어 있다면 조건부 컴파일을 수행합니다.

#ifdef ADD

        result=num1+num2;

        printf("연산 결과: %lf\n", result);

#endif

 

전처리 지시자

#ifdef

#endif

매크로 이름

ADD

컴파일 문장

result=num1+num2;

printf("연산 결과: %lf\n", result);

 

 

#ifndef ~ #endif 기본 형식

매크로 상수 ADD 정의 되어 있지 않다면 조건부 컴파일을 수행합니다.

#ifndef ADD

        result=num1+num2;

        printf("연산 결과: %lf\n", result);

#endif

 

전처리 지시자

#ifndef

#endif

매크로 이름

ADD

컴파일 문장

result=num1+num2;

printf("연산 결과: %lf\n", result);

 

 

 

 

 

 

'Development > C, C++' 카테고리의 다른 글

배열(Array)  (0) 2018.08.07
매크로(Macro)  (0) 2018.07.09
fgets( ) 함수와 fputs( ) 함수  (0) 2018.06.26
변수(Variable), C - 변수의 종류  (0) 2018.06.21
Visual Studio 2017 C++ 프로젝트 생성 - Windows Desktop Wizard  (0) 2018.06.17