#ifdef에 ‘or’조건을 추가하려면 어떻게해야합니까?
나는 시도했다 :
#ifdef CONDITION1 || CONDITION2
#endif
작동하지 않습니다.
답변
#if defined(CONDITION1) || defined(CONDITION2)
작동해야합니다. 🙂
#ifdef
타이핑이 적지 만 더 복잡한 조건에서는 잘 작동하지 않습니다.
답변
이것을 사용할 수 있습니다
#if defined CONDITION1 || defined CONDITION2
//your code here
#endif
이것은 또한 같은
#if defined(CONDITION1) || defined(CONDITION2)
//your code here
#endif
더욱이-
- 과:
#if defined CONDITION1 && defined CONDITION2
- XOR :
#if defined CONDITION1 ^ defined CONDITION2
- 그리고하지 :
#if defined CONDITION1 && !defined CONDITION2
답변
나는 엄격한 열 제한을 유지하는 것에 대해 OCD 이며, “\”줄 연속의 팬이 아니라 주석을 넣을 수 없기 때문에 여기에 내 방법이 있습니다.
//|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|//
#ifdef CONDITION_01 //| |//
#define TEMP_MACRO //| |//
#endif //| |//
#ifdef CONDITION_02 //| |//
#define TEMP_MACRO //| |//
#endif //| |//
#ifdef CONDITION_03 //| |//
#define TEMP_MACRO //| |//
#endif //| |//
#ifdef TEMP_MACRO //| |//
//|- -- -- -- -- -- -- -- -- -- -|//
printf("[IF_CONDITION:(1|2|3)]\n");
//|- -- -- -- -- -- -- -- -- -- -|//
#endif //| |//
#undef TEMP_MACRO //| |//
//|________________________________________|//