【发布时间】:2010-12-15 09:57:37
【问题描述】:
我正在编译将在 linux gcc 4.4.1 C99 上运行的程序。
我只是将我的#defines 放入以分隔将在 Windows 或 linux 上编译的代码。但是,我得到了这个错误。
error: macro names must be identifiers.
使用此代码
#ifdef(WIN32)
/* Do windows stuff
#elif(UNIX)
/* Do linux stuff */
#endif
但是,当我更改为这个时,错误已得到修复:
#if defined(WIN32)
/* Do windows stuff
#elif(UNIX)
/* Do linux stuff */
#endif
我只是想知道为什么会出现这个错误以及为什么 #defines 不同?
非常感谢,
【问题讨论】:
标签: c