1、#error命令是C/C++语言的预处理命令之一
#error
是C语言中的预处理指令之一,用于在编译时生成一个错误消息。当编译器遇到 #error
指令时,会立即停止编译,并将指定的错误消息输出到编译器的错误信息中。
在给定的代码中,#error
是一个空指令,没有提供错误消息。因此,编译器会报告一个空错误消息,并停止编译过程。这通常用于强制要求开发者在特定条件下停止编译,或者提醒开发者注意某些特定的编译配置或条件。
2、举例
#include <stdio.h>
//#define SHOW_INFO
#ifndef SHOW_INFO
#error you must define SHOW_INFO marco.
#endif
int main(void)
{
printf("hello world!\n");
getchar();
return 0;
}
这里的 #error,用于判断程序是否定义了 SHOW_INFO 这个宏,如果定义了则正常执行;如果未定义,则引起编译器报错,错误提示信息就是 #error 后面的内容。
如图所示(注释掉 SHOW_INFO 宏定义):