无法从MSVCRT strtod / sscanf / atof函数获取NaN

时间:2011-08-08 20:34:23

标签: c++ floating-point msvcrt scanf strtod

有没有办法从Windows CRT NaNstring功能获取float


为什么:我在C中编写了一个IEEE floatstring转换器,没有信息丢失(strtodsscanf或{ {1}}返回原始atof),前提是舍入模式不会更改。

我使用MinGW或Visual C ++,因此这些调用将转到MSVC ++运行时。问题是我无法解析任何特殊值(例如float"Inf")。 "NaN"可以(在解析不适合Inf的值后返回,例如float)。

"1e999"

1 个答案:

答案 0 :(得分:1)

没有。如果发生溢出,它们将返回HUGE_VAL;如果无法解析输入或发生下溢,则返回0。