로딩
요청 처리 중입니다...

[ C언어: #ifdef, #endif ]

 [ C언어: #ifdef, #endif ]

#ifdef, #endif #indef: 조건부 컴파일 전처리 지시자 * 조건부 컴파일 : 어떤 조건이 만족 되는 경우에만 지정된 소스 코드 블록을 컴파일 한다. #ifdef DEBUG printf("value = %d\n", value); #endif #ifdef 다음에 있는 매크로 DEBUG를 검사해 매크로가 정의되어 있으면 #if와 #endif 사이에 있는 모든 문장 들을 컴파일한다.

정의되어 있지 않을 경우 문장들은 컴파일되지 않으며 실행 코드에 포함되지 않는다. (없는 것으로 취급) ex) int average(int x, int y) { printf("x=%d, y=%d\n", x, y); … } 디버깅 시 의심이 가는 부분에 변수 값들을 위처럼 출력하는 경우 출력문은 디버깅 시 유용하지만 디버깅이 끝나면 불필요한 문장이다.

따라서 다음과 같은 조건부 컴파일을 사용한다. int average(int x, int y) { #ifdef DEBUG printf("x=%d, y...

# c언어 # 매크로 # undef # indef # if와 # ifndef # ifdef의 # ifdef와 # ifdef # endif # 전처리기