C언어는 아니지만 PREPROCESS 이긴 하지만...

ifdef 에 대해 알아봐요...

 

BUFFER1과 BEFFER2 의 DEFINE 이 있다고 하면, BUFFER1은 1,2 가 선언될수 있고, BUFFER2도 1과 2가 선언될수 있다면

어떤경우에는

#define BUFFER1  1

#define BUFFER2  1

이런경우와

#define BUFFER1  1

#define BUFFER2  2

이런경우

#define BUFFER1  2

#define BUFFER2  1

경우

#define BUFFER1  2

#define BUFFER2  2

경우가 있을수 있어요. 즉 총 4가지 경우가 있을수 있지요...

 

이경우 일반적인 소프트엔지니어들은 귀찮으즘때문에

/*

#define BUFFER1  1

#define BUFFER2  1

 

#define BUFFER1  1

#define BUFFER2  2

 

#define BUFFER1  2

#define BUFFER2  1

*/

 

#define BUFFER1  2

#define BUFFER2  2

 

이렇게 선언합니다.. REMARK문을 이용해서 하나만 살려서 사용을 하게 되지요...

 

조금 고급스럽게 PREPROCESS를 시행하려면( 여기서는 MODE4만 사용할때)

 

// #define MODE1

// #define MODE2

// #define MODE3

#define MODE4

 

#ifdef MODE1

    #define BUFFER1  1

    #define BUFFER2  1

#endif

 

#ifdef MODE2

    #define BUFFER1  1

    #define BUFFER2  2

#endif

 

#ifdef MODE3

    #define BUFFER1  2

    #define BUFFER2  1

#endif

 

#ifdef MODE4

    #define BUFFER1  2

    #define BUFFER2  2

#endif