page contents

预处理器标识#error的目的是什么?

轩辕小不懂 发布于 2022-08-15 13:46
阅读 730
收藏 0
分类:C/C++开发
4091
Nen
Nen
- 程序员

编译程序时,只要遇到 #error 就会跳出一个编译错误,既然是编译错误,要它干嘛呢?其目的就是保证程序是按照你所设想的那样进行编译的。下面举个例子:程序中往往有很多的预处理指令#ifdef XXX...#else#endif当程序比较大时,往往有些宏定义是在外部指定的(如makefile),或是在系统头文件中指定的,当你不太确定当前是否定义了 XXX 时,就可以改成如下这样进行编译:#ifdef XXX...#error "XXX has been defined"#else#endif这样,如果编译时出现错误,输出了XXX has been defined,表明宏XXX已经被定义了。

请先 登录 后评论