签署NaN值

基于“IEEE”规范:“当输入或结果是NaN时,该标准不解释NaN的符号。” 然而, printf NaN值打印为signed: nan-nan有人和我打开-nan有人能指出规则集(来自规范吗?)例如,我检查了printf(-1.0f)打印-nan谢谢您

NaN的底层表示包含一个符号位,这是printf在决定是否应该打印减号时所看到的。

标准表示应该忽略符号位的原因是允许像negateabsolute这样的东西简单地修改符号位,而不必强制检查输入值是否为NaN。