将double型转换成CString型,如何去掉后面无效的零

kasimwzm 2009-04-22 02:56:15
将double型转换成CString型,如何去掉后面无效的零
...全文
712 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
kasimwzm 2009-04-22
  • 打赏
  • 举报
回复
谢谢九楼的,解决了
bushizhuge 2009-04-22
  • 打赏
  • 举报
回复
s.Format("%g",d);
jackyjkchen 2009-04-22
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wangzhenming 的回复:]
不是精度问题,是去掉无效的0
[/Quote]
先试试
fallening 2009-04-22
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 fallening 的回复:]
C/C++ codestringd_2_s(constdoubled )
{
stringstream ss;
ss>>d;strings;
ss<<s;string::iterator it=s.rbegin();while(*it=='0'&&it!=s.rend() )
{
s.erase(it++);
}returns.c_str;
}
[/Quote]
return s;就成了,要想变成c样式的字符串,要返回s.c_str();
fallening 2009-04-22
  • 打赏
  • 举报
回复
string d_2_s( const double d )
{
stringstream ss;
ss >> d;
string s;
ss << s;

string::iterator it = s.rbegin();

while( *it == '0' && it! = s.rend() )
{
s.erase(it++);
}

return s.c_str;
}
rainbow_free 2009-04-22
  • 打赏
  • 举报
回复
以前我也遇到过这种问题 我最后好像是把编辑框的参数类型改成double!
kasimwzm 2009-04-22
  • 打赏
  • 举报
回复
不是精度问题,是去掉无效的0
jackyjkchen 2009-04-22
  • 打赏
  • 举报
回复
s.Format("%.1lf",d);

取精度和printf是一样的
kasimwzm 2009-04-22
  • 打赏
  • 举报
回复
用CString函数的Format方法可以转
double d=1.1;
CString s;
s.Format("%lf",d);

将s输出到编辑框后显示1.10000
怎样才能将后面无效的0去掉
lpf000 2009-04-22
  • 打赏
  • 举报
回复
double转换成字符?不会 应该是转换为整型然后转换为字符,或者自己编写函数实现double转字符串

65,202

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧