我有这些宏:
#define TRUE 1;
#define FALSE 0;
我想在 if 条件下使用它们,例如:
if (functionThatReturnsIntZeroOrOne() == FALSE) do_something();
但我收到这样的错误信息:
"Expected expression".
我做错了什么?
最佳答案
你定义FALSE
为0;
,定义为0
(#define FALSE 0
,没有分号)。分号包含在定义中,因此 FALSE
被替换为 0;
,这会在您的 if 条件中放置一个分号。
关于c - 错误的宏定义导致 "Expected expression"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30407086/