如何截去双精度值的几位小数

发布于 2024-11-07 20:27:06 字数 665 浏览 1 评论 0原文

可能的重复:
从双精度数据获取特定整数的方法类型

C++

所以我需要一种方法来从双精度 56.279 或任何其他整数中获取数字 7,并且如果不知道数字 7 是什么,我无法弄清楚如何做到这一点双倍返回自我的函数是(所以我不能简单地做 56.279 - .009)。

我的函数总是以这种形式返回经过的秒数作为双精度值:000.000。我也只有 5 个字符空间来将时间打印到 CONSOLE 窗口,因此

如果数字小于 10,我只需打印 0.000 秒,如果超过 10 00.00,如果超过 60 秒(一分钟)然后 0:00,最后如果超过 10 分钟,我将在 5 个字符空间中打印 00:00。因此,我需要去掉 56.279 中的 9,以便该数字适合空格。我想我需要简单地单独获取除 9 之外的每个数字并将它们插入到 char 数组中...

还有其他想法吗?
谢谢!

Possible Duplicate:
way to get specific integer(s) from a double data type

C++

So i need a way to get say the number 7 from the double 56.279 or any other of the integers and i cannot figure out how to do it without having the knowledge of what the double returned from my function is going to be (so i cant simply do 56.279 - .009).

My function alway returns seconds elapsed as a double in this form: 000.000. I also only have 5 character spaces to print the time to the CONSOLE window so

if the number is less than ten i need to simply print 0.000 sec, if more than ten 00.00, if more than sixty seconds (one minute) then 0:00, and finally if more than 10 minutes i will print 00:00 in the 5 character space. I need to therefore get rid of the 9 in the 56.279 so the number fits in the space. I'm thinking i need to simply get each number individually except for 9 and insert them into a char array...

Any other ideas?
Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

情深缘浅 2024-11-14 20:27:06

看看这个页面:
http://www.cplusplus.com/reference/iostream/ios_base/ precision/

如果您只需要更改显示,类似 setw 的内容可能合适:
http://www.cplusplus.com/reference/iostream/manipulators/setw/

Look at this page:
http://www.cplusplus.com/reference/iostream/ios_base/precision/

If you only need to change the display something like setw might appropriate:
http://www.cplusplus.com/reference/iostream/manipulators/setw/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文