我似乎无法在我的iOS项目中使用#elifdef
。如果我这样做:
#ifdef X
const Foo bar[] = { ... };
#else
const Foo bar[] = { ,,, };
#endif
然后顶部的一个(在X下面)突出显示而底部的一个没有突出显示。如果我这样做:
#ifdef W
const Foo bar[] = { ;;; };
#elifdef X
const Foo bar[] = { ... };
#else
const Foo bar[] = { ,,, };
#endif
然后底部的一个(在其他地方)突出显示而前两个没有。为什么?还有另一种方法我应该这样做吗?我有三个目标,他们都使用相同的m文件。但是,每个目标的常量有点不同,所以我将它们分开。
答案 0 :(得分:77)
您可以简单地写一下:
#elif defined X
哪个应与所有ANSI-C兼容的编译器兼容。