代码点读机 / C / #elif

#elif C · 预处理

当前面的 #if 或 #elif 条件都不成立时,再判断这个新条件,成立就保留对应代码参与编译。

怎么用

#if 条件1
  A
#elif 条件2
  B
#else
  C
#endif

小例子

#include <stdio.h>
#define SCORE 85
int main(void) {
#if SCORE >= 90
    printf("优");
#elif SCORE >= 80
    printf("良");
#else
    printf("其他");
#endif
    return 0;
}

运行结果

输出 良

提醒:相当于 else if,可以连续写多个;条件也必须是编译期常量

官方文档:https://en.cppreference.com/w/c/preprocessor/conditional

在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← C全部词条