我有这些宏:
#define TRUE 1;
#define FALSE 0;
我想在if条件下使用它们,例如:
if (functionThatReturnsIntZeroOrOne() == FALSE) do_something();
但是我收到了这样的错误消息:
"Expected expression".
我做错了什么?
答案 0 :(得分:6)
您将FALSE
定义为0;
,将其定义为0
(#define FALSE 0
,不带分号)。分号中包含分号,因此FALSE
会被0;
替换,后者会在if条件中添加分号。