是HAS_SUBNORM
和__STDC_IEC_559__
依赖?例如:
- 如果
__STDC_IEC_559__
为 1,HAS_SUBNORM
则为 1。 - 如果
HAS_SUBNORM
是0,那么__STDC_IEC_559__
就不是1。
是HAS_SUBNORM
和__STDC_IEC_559__
依赖?例如:
__STDC_IEC_559__
为 1,HAS_SUBNORM
则为 1。HAS_SUBNORM
是0,那么__STDC_IEC_559__
就不是1。是
HAS_SUBNORM
和__STDC_IEC_559__
依赖?
我建议不要。
__STDC_IEC_559__ == 1
并且xxx_HAS_SUBNORM != 1
可能。
C17 附录 F 规定了需要遵守的内容__STDC_IEC_559__
:“定义的实现__STDC_IEC_559__
应符合本附件中的规范。”
附录 F 没有指定对次正规的支持,甚至在 2 个地方描述了函数:
...当支持次正规结果时,返回值是精确的,并且与当前舍入方向模式无关。C17dr § F.10.7.2&3 2。
这至少意味着这些功能不需要低于标准的支持。另见@Ian Abbott
尼特:
“__STDC_IEC_559__
不是 1。” 更像是“__STDC_IEC_559__
未定义”,而不是“如果定义而不是 1”。