错误的宏定义casuses"预期表达式"错误

mar*_*zzu 1 c macros

我有这些宏:

#define TRUE 1;
#define FALSE 0;
Run Code Online (Sandbox Code Playgroud)

我想在if条件下使用它们,例如:

if (functionThatReturnsIntZeroOrOne() == FALSE) do_something();
Run Code Online (Sandbox Code Playgroud)

但我得到这样一个错误信息:

"Expected expression". 
Run Code Online (Sandbox Code Playgroud)

我做错了什么?

iob*_*der 6

您定义FALSE0;,将其定义为0(#define FALSE 0没有分号).分号包含在define中,因此FALSE替换为0;在if条件中放置分号.