面试题答案
一键面试-
#error预处理指令的作用:
#error
预处理指令用于在预处理阶段生成错误信息,当预处理器遇到#error
指令时,它会停止编译并输出#error
后面跟随的错误信息。这对于在特定条件下强制停止编译过程,以提醒开发者某些不符合预期的情况非常有用。
-
代码示例:
#include <stdio.h>
// 假设这里定义了一个特定宏
#define SPECIFIC_MACRO
int main() {
#ifdef SPECIFIC_MACRO
#error "SPECIFIC_MACRO is defined, compilation cannot proceed!"
#endif
printf("This code will not be reached if the error is triggered.\n");
return 0;
}
在上述代码中,如果定义了SPECIFIC_MACRO
宏,预处理器会遇到#error
指令并停止编译,输出错误信息SPECIFIC_MACRO is defined, compilation cannot proceed!
。如果没有定义SPECIFIC_MACRO
宏,程序将正常编译并执行printf
语句。