【问题标题】:Why would someone add zero to __STDC_VERSION__? [duplicate]为什么有人会在 __STDC_VERSION__ 中添加零? [复制]
【发布时间】:2016-05-07 19:16:32
【问题描述】:

查看stdarg.h,我发现了以下内容:

#if !defined(__STRICT_ANSI__) || __STDC_VERSION__ + 0 >= 199900L
#define va_copy(d,s)    __builtin_va_copy(d,s)
#endif

在表达式中加0有目的吗?

【问题讨论】:

  • stdarg.h 来自哪个工具链或系统?

标签: c macros ansi c-libraries


【解决方案1】:

大多数编译器会忽略这一点。它可能是一些先前实现的遗留代码,也可能是为了说服特定的编译器按照程序员的意图处理这些代码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-17
    • 1970-01-01
    • 1970-01-01
    • 2017-02-26
    • 2014-03-11
    • 1970-01-01
    • 2019-02-18
    • 1970-01-01
    相关资源
    最近更新 更多