如何将CString转换为整数和浮点数?

我试图将CString转换为int和浮动,但无法find任何C ++库函数来完成。 请帮忙。

MFC中使用符合UNICODE规范的方法如下:

 CString sInt = _T("10"); int n = _ttoi(sInt); CString sFloat = _T("10.1"); float f = _ttof(sFloat); 

正如David Heffernan所说:如果你的项目配置只是UNICODE,并且你没有使用MBCS,也没有任何针对Windows 98等老MS操作系统的计划,你可以使用:

 CStringW s = L"10"; int i = _wtoi(s); 

C ++ 11中,你可以使用下面的代码:

 std::string sInt = "10"; int i = std::stoi(sInt); std::string sFloat = "10.1"; double d = std::stod(sFloat);