签署NaN值
基于“IEEE”规范:“当输入或结果是NaN时,该标准不解释NaN的符号。” 然而, printf
NaN
值打印为signed: nan
或-nan
有人和我打开-nan
有人能指出规则集(来自规范吗?)例如,我检查了printf(-1.0f)
打印-nan
谢谢您
NaN的底层表示包含一个符号位,这是printf
在决定是否应该打印减号时所看到的。
标准表示应该忽略符号位的原因是允许像negate或absolute这样的东西简单地修改符号位,而不必强制检查输入值是否为NaN。