📄 subject_25239.htm
字号:
<p>
序号:25239 发表者:二极管 发表日期:2002-12-19 22:02:03
<br>主题:double型浮点数转为CString型字符串算法问题
<br>内容:CString CFlyAllDialog::FloatToString(double data)<BR>{ <BR> CString String;<BR> int temp[6];<BR> if(data<0) <BR> {<BR> temp[0]=45-48;<BR> data=fabs(data);<BR> }<BR> else <BR> temp[0]=32-48;<BR> temp[2]=46-48;<BR> if(data>1)<BR> temp[1]=((int)data);<BR> else<BR> temp[1]=0;<BR> data=data-(int)data;<BR> data=data*1000;<BR> temp[3]=((int)data/100);<BR> data=data-(temp[3]*100);<BR> temp[4]=((int)data/10);<BR>*** data=data-(temp[4]*10);<BR> temp[5]=((int)data);<BR> for(int i=0;i<6;i++)<BR> {<BR> String+=temp[i]+48;<BR> }<BR> <BR><BR> return String;<BR>}<BR>我的数都是一位整数,三位小数。<BR>不知道为什么,有些数到这里就被舍去了,比如过来的-3。456出来的字符型是“-3。455”,1。111是“1。110”;有些数就可以。<BR>设断点调试后,发现***行的data分别是5。999999和0。999999<BR>不知道有没有改进的算法和函数?
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:阿蒙 回复日期:2002-12-20 10:18:35
<br>内容:老兄,你也太神了吧。<BR>你干吗不这样:<BR>String.Format("%.3f",data);<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:李江 回复日期:2002-12-20 11:13:29
<br>内容:是呀?何必这么麻烦呢???
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:二极管 回复日期:2002-12-21 18:56:14
<br>内容:谢谢阿门!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:二极管 回复日期:2002-12-23 22:11:13
<br>内容:不过还是有个问题啊,这个样子,正数前面就不可以加空格了,因为我是把数字转成string类型后用TextOut输出在表格中,要对齐,又该怎么做呢?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -