MFC中怎么可以把double转成cstring
我用的是vs2010··做的就是那个经典加法计算机的例子···例子中只有整数相加··但我想实现小数相加···我已经把unicode换成multi-byte了。将cstri...
我用的是vs2010··做的就是那个经典加法计算机的例子···例子中只有整数相加··但我想实现小数相加···我已经把unicode换成multi-byte了。将cstring类型转换成double型用的是atof()。那用double转换成cstring类型呢?(用unicode也可以,只要转的成功就行)
展开
2个回答
展开全部
CString str;
double doubleValue = 1.0f;
str.Format(TEXT("%lf\n%.2lf"),doubleValue,doubleValue); //不管是否UNICODE,加上TEXT宏后即可自适应;后一个.2lf表示取两位小数
另外,CString转double也不一定必须从unicode转成mbcs,有两种方法可行:
1、_tcstod
2、_stscanf
_tcstod在UNICODE环境下,等同于wcstod;_stscanf在UNICODE环境下,等同于swscanf
double dblVal;
//下面演示这两种方法:
dblVal = wcstod(L"1.0",NULL);
swscanf(L"1.0",L"%lf",&dblVal);
追问
我现在要做的是将用户输入到eidt box中的数字导出到txt文档中··可以用Format()实现在txt中的换行吗?我尝试了用\n··但输出还是那样··没有改变··也可能是我写法有问题吧··你能提供一个只有换行功能的format函数给我嘛?O(∩_∩)O谢谢
追答
CString str;
double doubleValue = 1.0f;
str.Format(TEXT("%lf\r\n%.2lf"),doubleValue,doubleValue); //windows上用\r\n换行
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询