转换浮点值时的std :: to_string的集精密[复制](Set precision of s

2019-09-04 00:31发布

这个问题已经在这里有一个答案:

  • 性病的精度:: to_string(双) 3个回答

在C ++ 11,的std :: to_string默认为6位小数时给定类型的输入值floatdouble 。 被推荐的是什么,或者最优雅的,改变这种精确的方法?

Answer 1:

有没有办法改变通过精密to_string()setprecision IO机械手可以用来代替:

#include <sstream>

template <typename T>
std::string to_string_with_precision(const T a_value, const int n = 6)
{
    std::ostringstream out;
    out.precision(n);
    out << std::fixed << a_value;
    return out.str();
}


文章来源: Set precision of std::to_string when converting floating point values [duplicate]