gpt4 book ai didi

c++ - mfc中将CString转为float

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:22:04 25 4
gpt4 key购买 nike

如何将 CString 变量转换为 float ?(我正在使用 visual c++ 6.0 和 MFC)

我正在尝试使用编辑框返回一个值,我将其放入一个 float 组中。我正在使用 GetWindowText 方法获取返回 CString 的值。所以我需要转换为 float 。 (或者我只是以完全错误的方式做事?)。

我想在 MFC 中已经有这样做的方法。(已经使用 Format 方法转换为 CString,在编辑框中显示数组中的值)

谢谢。

最佳答案

你可以这样做

    CString pi = "3.14";
return atof(pi);

编辑

同样使用这个函数:

    CString pi = "3.14";
return _ttof(pi);

读取字符串值并将其解析/转换为 float 可以让您在出现错误时定位错误。您所需要的只是 C 运行时函数的帮助:strtod() 或 atof()。

我更喜欢 strtod,因为第二个参数返回一个指向解析终止的字符串的指针:

 CString str;
m_edtMyEditBox.GetWindowText(str);
char *pEnd;
double dValue = strtod(str.GetBuffer(str.GetLength()), &pEnd);
if (*pEnd != '\0')
{
// Error in parsing
}
str.ReleaseBuffer();

关于c++ - mfc中将CString转为float,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5788772/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com