0
一个常见的问题,可能是我在这一点上是错误的,但在谷歌上最后两个小时不给我任何答案, 问题是如何将CString转换为float,而不使用C++中的std:library。CString到Float转换
我试过wcstod()函数但是,这个函数有非常不同的行为。 请找到下面的代码,
CString Tempconvert = "32.001";
double TempConvertedValue = wcstod(Tempconvert,NULL);
所以,最后TempConvertedValue应有的价值32.001。但我越来越TempConvertedValue = 32.000999999999998 请给我提供任何帮助,将 字符串“32.001”转换为仅浮点数32.001。不使用std:library。
它看起来有一个浮动(而不是双)在某处。花车不能完全表达32.001,但可以双重表示。 wcstod返回一个双重寿命,所以问题不应该在那里。你如何输出价值? –
'std'库有什么问题? – herohuyongtao
@JoelKlinghed这是不正确的,double不能完全表达浮点值,因为它使用与float相同类型的编码,但是具有更多位,因此它可以保持更大的值并具有更高的精度。 –