• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

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

9061564679fb395a 2019-07-27 浏览量:1897
预处理器标识#error的目的是什么?
1 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 编译程序时,只要遇到 #error 就会跳出一个编译错误,其目的就是保证程序是按照你所设想的那样进行编译的。
    当程序比较大时,往往有些宏定义是在外部指定的(如makefile),或是在系统头文件中指定的,当你不太确定当前是否定义了 XXX 时,就可以如下这样进行编译:
    #ifdef XXX
    ...
    #error "XXX has been defined"

    #else

    #endif


    如果编译时出现错误输出了XXX has been defined表明宏XXX已经被定义了。

    • 发布于 2019-07-27
    • 举报
    • 评论 0
    • 2
    • 0

其他答案 数量:6
  • #error 预处理指令的作用是,编译程序时,只要遇到#error 就会生成一个编译错误提示消息,并停止编译。
    • 发布于2019-07-27
    • 举报
    • 评论 0
    • 1
    • 0

  • #error命令是C/C++语言的预处理命令之一,当预处理器预处理到#error命令时将停止编译并输出用户自定义的错误消息。当编译器遇到#error一行之后,会停止编译并输出一个错误,错误的文字为#error之后的内容。
    • 发布于2019-07-27
    • 举报
    • 评论 0
    • 1
    • 0

  • 一个预编译指令

    遇到预编译认定的错误是,输出你自定义的错误信息,可以看到是哪里的错误,这种错误不属于编译链认定的错误,通常在一些操作系统之类的大型应用中比较常见

    • 发布于2019-07-27
    • 举报
    • 评论 0
    • 1
    • 0

  • 这个标识是为了在编译的时候,避免一些不合法的编译顺序,由于编译器会带有优化功能,将一些执行顺序优化,为了避免这种情况,就要用到这个#error了
    • 发布于2019-07-28
    • 举报
    • 评论 0
    • 1
    • 0

  • 主要目的就是起到一个提示作用不让编译通过,编译时让程序员必须查看这段宏定义,然后对一些配置进行修改,也有的用警告提示,道理一样
    • 发布于2019-07-28
    • 举报
    • 评论 0
    • 1
    • 0

  • 主要的功能就是对代码的编译,如果遇到错误及时输出提示,能够提醒进行代码的检测
    • 发布于2019-08-10
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

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