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

条件编译#ifndef debug

huihui163 2018-11-01 浏览量:883

条件编译#ifndef  debug

#define  debug​

这种写法有啥大的用处吗

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 一般是用来防止重复定义的

    具体到你的情况,没有完整代码不好说

    举个通常的例子,每个头文件都会有的:

    #ifndef __W25QXX_H
    #define __W25QXX_H 

    ....

    #endif

    如果有没这几个宏,当有多个源文件include这个头文件时,那么中间的函数声明什么的,就会被重复声明。编译时会出错。

    • 发布于 2018-11-01
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:12
  • 主要是避免重复定义,

    只有第一次定义是有效的,代码可以执行,之后再定义,就重复了,这个代码能检查出来,之后也就不会执行这段代码,

    • 发布于2018-11-01
    • 举报
    • 评论 0
    • 0
    • 0

  • 1. 用来防止重复定义

    2. 用来快速的开关一些定义内容,特别是调试相关、而正常代码中不需要的。比如你举例的debug,不过一般宏定义中宏名都是用大写的。

    • 发布于2018-11-01
    • 举报
    • 评论 0
    • 0
    • 0

  • 如果没有定义过debug就定义debug,防止重复定义
    • 发布于2018-11-01
    • 举报
    • 评论 0
    • 0
    • 0

  • 是用来防止重复定义的,如果没有但是你又重复定义了编译是不会过的
    • 发布于2018-11-01
    • 举报
    • 评论 0
    • 0
    • 0

  • 防止重复定义,只要定义过一个就不会再定义了
    • 发布于2018-11-01
    • 举报
    • 评论 0
    • 0
    • 0

  • 防止重复定义,当有了这个定义,你如果再次定义,会检查出来。


    • 发布于2018-11-01
    • 举报
    • 评论 0
    • 0
    • 0

  • 避免重复定义造成功能冲突或者把原先功能修改掉了。
    • 发布于2018-11-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 调试代码比较方便,改一个宏就可以快速修改代码了。不用麻烦的到处注释,用在定义PRINTF上比较多
    • 发布于2018-11-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 防止重复定义的功能,用现在新版的编译器,一般的情况下不加也不会有什么大问题
    • 发布于2018-11-07
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个一般出现在头文件里面,是防止重复定义的,可以有效提高编译效率。
    • 发布于2018-11-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个是用来防止重复定义,防止你的变量冲突
    • 发布于2018-12-12
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

条件编译#ifndef debug