#error命令是C/C++语言的预处理命令之一,当预处理器预处理到#error命令时将停止编译并输出用户自定义的错误消息。
如下代码输出数字1000,如果加了 #error,构建时不会通过,提示出错如下;
这可能在大型项目中比较有用;
如下据说是freertos源码中的例子,
#ifndef configEXPECTED_IDLE_TIME_BEFORE_SLEEP
#define configEXPECTED_IDLE_TIME_BEFORE_SLEEP 2
#endif
#if configEXPECTED_IDLE_TIME_BEFORE_SLEEP < 2
#error configEXPECTED_IDLE_TIME_BEFORE_SLEEP must not be less than 2
#endif
如果configEXPECTED_IDLE_TIME_BEFORE_SLEEP 定义的小于2,则编译出错;