【发布时间】:2013-06-17 03:52:10
【问题描述】:
我想将浮点值格式化为 n 个有效数字,但从不使用科学计数法(即使它会更短)。
格式规范%f 不处理有效数字,%g 有时会给我科学记数法(这不适合我的使用)。
我想要"123", "12.3", "1.23" or "0.000000123" 形式的值。
有没有一种优雅的方式可以使用C++或boost做到这一点?
【问题讨论】:
-
那么你想让 123456 也打印为 123000 吗?
-
@MatsPetersson,是的,这就是我要说的(但实际上我将百分比值格式化为 3 位有效数字,因此不会出现问题)
-
可能不错,但我没有测试过:stackoverflow.com/a/15167203/1715716
标签: c++ format scientific-notation boost-format