社区
C++ 语言
帖子详情
对Floating-Point Functions 了解的来看看
code_cold
2008-05-27 11:42:34
如何按保留小数点后指定几位修整一个float,比如
float XXfunc(float)
{
return XX;// 只保留小数点后5位
}
float f = 3254.1234;
XXfunc(f) == 3254.123; // 只保留小数点后3位
...全文
112
7
打赏
收藏
对Floating-Point Functions 了解的来看看
如何按保留小数点后指定几位修整一个float,比如 float XXfunc(float) { return XX;// 只保留小数点后5位 } float f = 3254.1234; XXfunc(f) == 3254.123; // 只保留小数点后3位
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kuchao
2008-05-28
打赏
举报
回复
哦 如果要3254.1234做出来是3254.1230,XXFunc里面应该是
sprintf(toStr, "%7.3f", fNumber);
kuchao
2008-05-28
打赏
举报
回复
float小数点后精度是靠语言约定的。
我怀疑你可能想表达这样的想法
int XXFunc(float fNumber, char* toStr)
{
return sprintf(toStr, "%5.3f", fNumber);
}
int XXXFunc(const char* toStr, float& fNumber)
{
fNumber = atof(toStr);
return 0;
}
然后
char toStr[256];
float f1 = 3254.1234;
float ff1;
XXFunc(f1, toStr);
XXXFunc(toStr, ff1);
但是,这样ff1也只能是3254.1230
code_cold
2008-05-28
打赏
举报
回复
[Quote=引用 3 楼 arong1234 的回复:]
float的本质决定如果你用上面函数原型绝对无法实现。如果你认为你找到了方法,那么你的判断方法一定出了问题
[/Quote]
// 只保留小数点后3位
float XXX(float f)
{
char str[256];
sprintf(str, "%.3f", f);
return atof(str);
}
arong1234
2008-05-28
打赏
举报
回复
float的本质决定如果你用上面函数原型绝对无法实现。如果你认为你找到了方法,那么你的判断方法一定出了问题
code_cold
2008-05-28
打赏
举报
回复
如何 按保留小数点后 指定几位 修整一个float,比如
float XXfunc(float)
{
return XX;// 只保留小数点后3位
}
例如
XXfunc(3254.1234) == 3254.123; // 只保留小数点后3位
XXfunc(0.123467) == 0.123; // 只保留小数点后3位
XXfunc(3856.12) == 3856.12; // 只保留小数点后3位
是有办法能实现XXfunc的,只是我的办法太笨拙了,感觉C/C++可能有这个功能
code_cold
2008-05-28
打赏
举报
回复
你的意思我了解了,怪我没表达清楚
其实我只是要求小数点后保留的几位有效数一致就可以了,就是说3254.1230,3254.123都可以
这当然是个办法,可效率太低了
arong1234
2008-05-27
打赏
举报
回复
No way. C/C++的语言中不可能精确保留5位有效数字。
AR.Drone开发手册
AR.Drone开发手册 它是用iPhone遥控的4轴飞行器!支持实景多人对战!
Julia 文档
Julia 是一个面向科学计算的高性能动态高级程序设计语言。其语法与其他科学计算语言相似。在许多情况下拥有能与编译型语言相媲美的性能。
go代码-Go 数据类型
go代码-Go 数据类型
C++ 语言
65,186
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章