这是我需要使用预处理器指令编写的伪代码:
(IF VAR == NOT DEFINED) OR (VAR == DEFINED AND VAR == 0) THEN
{a few lines of code}
如何将逻辑表达式写成一行?
我尝试过:
#if (defined(VAR) == 0) || ((defined(VAR) == 1) && (VAR == "0"))
但是没有用。它说:
未声明的标识符:“ VAR”。
您的代码似乎合理。我希望它也能正常工作。
无论如何,您的代码给人的印象是“ 0”应为VAR
的默认值。因此,应该这样做:
#ifndef VAR
#define VAR "0"
#endif
#if VAR == "0"
{a few lines of code}
#endif