最佳答案
我正在编译将在 linux gcc 4.4.1 C99上运行的程序。
我只是将我的 # Definition 放入其中,以分离将在 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
我只是想知道为什么我得到了这个错误,为什么 # 定义是不同的?
非常感谢,