我有以下code.if我把control_word为6为什么如果条件评估为真,并进入内部,如果块?究竟发生了什么?为什么这个行为与MACRO?
#define MACRO1 0x01
#define MACRO2 0x02
#define MACRO4 0x04
#define MACRO3 MACRO1 | MACRO2
#define MACRO7 MACRO4 | MACRO3
int main()
{
if(control_word == MACRO3 || control_word == MACRO7)
{
/*DO SOME OPERATION*/
}
else
{
/*DO SOMETHING ELSE */
}
}
这不是关于宏的问题。你可以执行所有的替换,你会看到为什么你会得到这个结果。 –