gpt4 book ai didi

c - 在 C 预处理器语句中添加零

转载 作者:太空狗 更新时间:2023-10-29 17:07:42 25 4
gpt4 key购买 nike

在查看一些 c 头文件(特别是 stdarg.h)时,我注意到一个非常奇怪的行:

#if !defined(__STRICT_ANSI__) || __STDC_VERSION__ + 0 >= 199900L

奇怪的部分是 + 0。零是添加剂标识;这是编写 noop 的各种数学运算之一。

在上面的预处理器语句中加零有什么作用?我知道有all sorts of weird preprocessor magic在那里,但这看起来很荒谬。

最佳答案

如果 __STDC_VERSION__ 被定义为一个预处理器语法错误空 token (例如使用 #define __STDC_VERSION__)。

(感谢 Jens Gustedt 指出我的第一个答案是错误的。)

关于c - 在 C 预处理器语句中添加零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20448053/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com