hur.cn - 华软网

 热门搜索

输出浮点数

  作者:未知    来源:网络    更新时间:2010/12/9
如果输出一个浮点数
Stemp.Format("%.4f,",x);
这个是输出小数点后4位有效数字. 请问如何能随意设置小数点后面几多位有效果数字
如果我用一个combom来让用户选择输出几多位有效果数字. 1.2.3....
程序不用if语句或switch语句就能够根据用户的选择输出浮点数 
---华软 网友回答---
我以为就得switch一下
---华软网友回复---
char fmt[16];

sprint(fmt,"%%.%df,",len);//这个len就是用户输入的,%%表示字符'%'

Stemp.Format(fmt,x);

你的格式化字符串用的格式也是一个字符串,你只需把这个格式措置惩罚下就好了

比如你的:"%.4f,"就是一个字符串,你组合成自己需要的再传给stemp去用就好了
---华软网友回复---
CString strFormat;
strFormat.Format("%%.%df", nSel+1);// 假定 nSel 从 0 起头
Stemp.Format(str1,x);

---华软网友回复---
Stemp.format("%." + strInput + "f", x)
---华软网友回复---
引用 2 楼 varding 的回复:
char fmt[16];

sprint(fmt,"%%.%df,",len);//这个len就是用户输入的,%%表示字符'%'

Stemp.Format(fmt,x);

你的格式化字符串用的格式也是一个字符串,你只需把这个格式措置惩罚下就好了

比如你的:"%.4f,"就是一个字符串,你组合成自己需要的再传给stemp去用就好了


很好很强盛
---华软网友回复---
C++">int nCount =0,1,2,3,4,...
CString strText(_T(""));
float f = 2.3243253f;
strText.Format(_T("%.*f"), nCount, f);
AfxMessageBox(strText);

---华软网友回复---
引用 3 楼 lazy_2010 的回复:
CString strFormat;
strFormat.Format("%%.%df", nSel+1);// 假定 nSel 从 0 起头
Stemp.Format(str1,x);


+++
---华软网友回复---
int index=  m_combo.GetCurSel();
CString m_comboStr = "";
m_combo.GetLBText(index,m_comboStr);
CString m_formatStr = "%."+ m_comboStr+"f";//限制输特别式 "%.4f"
double f = 12345.12345;
CString str;
str.Format(m_formatStr,f);
MessageBox(str);   style="text-align: left;">
---华软网友回复---
搞定.谢谢!      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。