ฉันจะเพิ่มเงื่อนไข 'หรือ' ใน #ifdef ได้อย่างไร
ฉันเหนื่อย:
#ifdef CONDITION1 || CONDITION2
#endif
สิ่งนี้ใช้ไม่ได้
ฉันจะเพิ่มเงื่อนไข 'หรือ' ใน #ifdef ได้อย่างไร
ฉันเหนื่อย:
#ifdef CONDITION1 || CONDITION2
#endif
สิ่งนี้ใช้ไม่ได้
คำตอบ:
#if defined(CONDITION1) || defined(CONDITION2)
ควรทำงาน. :)
#ifdef
พิมพ์น้อยลงเล็กน้อย แต่ใช้งานไม่ได้กับเงื่อนไขที่ซับซ้อนมากขึ้น
#if !defined(CONDITION1) && !defined(CONDITION2)
ที่คุณต้องการใช้และ:
#endif
หรือไม่?
อาจใช้สิ่งนี้ -
#if defined CONDITION1 || defined CONDITION2
//your code here
#endif
สิ่งนี้ก็ทำเช่นเดียวกัน -
#if defined(CONDITION1) || defined(CONDITION2)
//your code here
#endif
Further-
#if defined CONDITION1 && defined CONDITION2
#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 //| |//
//|________________________________________|//
#elif defined(CONDITION1) || defined(CONDITION2)
?