在您的代码中,VALUE_MAX不是变量,而是宏。宏可以在预处理时被视为文本替换。所以,
代码语言:javascript复制 if(VALUE_MAX)它被翻译成
代码语言:javascript复制 if (300)永远都是真的。它相当于
代码语言:javascript复制 if(1)基本上没有效果。if条件下的代码块将无条件执行。
编辑:(精益求精,以更好地盖章)
if语句称为选择语句。简单if语句的语法是
代码语言:javascript复制 if ( expression ) statement根据对expression的评估,决定是否执行以下statement (或块)。
如果是你的代码,
代码语言:javascript复制 if(VALUE_MAX)总是计算结果为TRUE。在这个场景中,使用if语句是毫无意义的。YOu可以完全摆脱if语句。