我正在编译将在linux gcc 4.4.1 C99上运行的程序.
我只是把我的#defines放在一起分开将在windows或linux上编译的代码.但是,我收到了这个错误.
error: macro names must be identifiers.
Run Code Online (Sandbox Code Playgroud)
使用此代码
#ifdef(WIN32)
/* Do windows stuff
#elif(UNIX)
/* Do linux stuff */
#endif
Run Code Online (Sandbox Code Playgroud)
但是,当我更改为此错误时,错误已得到修复:
#if defined(WIN32)
/* Do windows stuff
#elif(UNIX)
/* Do linux stuff */
#endif
Run Code Online (Sandbox Code Playgroud)
我只是想知道为什么我得到了这个错误以及为什么#defines不同?
非常感谢,
c ×1