Program Tip

#if 전 처리기 지시문이 C ++에 중첩 될 수 있습니까?

programtip 2020. 10. 16. 07:58
반응형

#if 전 처리기 지시문이 C ++에 중첩 될 수 있습니까?


C ++의 전 처리기 지시문에 대한 질문이 있습니다.

예를 들면 :

#ifndef QUESTION

//some code here

#ifndef QUESTION

//some code here

#endif

#endif

이런 식으로 사용할 수 있습니까 ? ifndef그리고 C ++ 컴파일러 endif가 올바른 방식으로 및와 일치 할 수 있습니까?


그래 우리는 할 수있어. #endif이전에 문 일치 #if #ifdef또는 #ifndef등이있는 해당이되지 않았습니다 #endif.

예 :

#if  ----------|
#if  -----|    |
#endif ---|    |
#endif --------|

예, 중첩 #if/ #endif블록을 할 수 있습니다 . 일부 C 코딩 스타일은

#ifdef CONDITION1
# ifdef CONDITION2
# endif
#endif

공백을 사용하여 중첩 수준을 나타냅니다.


코드에서 #undef QUESTION을 사용하지 않으면 #ifndef QUESTION 섹션이 삭제됩니다.

행운을 빕니다!

참고 URL : https://stackoverflow.com/questions/6678396/can-if-pre-processor-directives-be-nested-in-c

반응형