VC double CString 相互转换 摘录

来源:互联网 发布:东京 泡泡 上门 知乎 编辑:程序博客网 时间:2024/05/16 11:34

网上摘录的,很有用:

CString ---->double

首先你要确定你的工程字符集用的是多字节而不是unicode才能用下面的方法, 因为vs2008/2010默认使用的是unicode编码. 修改方式为: 在解决方案窗口右键工程名-->属性->General项(我用的是英文的)-->字符集, 选择多字节那个就行了
CString str;
转成int: ;int a = atoi(str.GetBuffer());
转成double: double b = atof(str.GetBuffer()); 


// 如果你坚持要用unicode的话, 你就用下面两个函数:
转成int: ;int a = _wtoi(str.GetBuffer());
转成double: double b = _wtof(str.GetBuffer());


double--------->CString

你是不是想显示在edit里面的结果是0.835209863832?

如果这样的话可以
double a=8.35209863832E-1;
CString b;

b.Format("%.12f",a);//显示到小数点后12位,不够的话再加大一点D

b.Format(_T("%.12f"),a);//显示到小数点后12位,不够的话再加大一点D

否则 一般"%lf"只显示6位

0 0
原创粉丝点击