Я пытаюсь выполнить условие, указанное в строке var "str".
Я пытался поместить его в определение макроса, но оно не работает.
В отличие от этого, когда условие определяется непосредственно как в "CONDITION_DEF".
#define CONDITION_STR str
#define CONDITION_DEF defined A && defined B
#define A 1
#define B 1<br><br>
int main(){
char *str = "defined A && defined B";
#if CONDITION_STR
printf("Condition from str: A and B are defined");
#endif<br>
#if CONDITION_DEF
printf("Condition from define: A and B are defined");
#endif
}
ВЫХОД:
"Condition from define: A and B are defined"
Условие помещается в строковую переменную, чтобы я мог изменить его во время выполнения.
Есть ли другой способ быть в состоянии выполнить условие #if из строковой переменной?
Спасибо!