当浮点数为整数时,如何将浮点数转换为字符串并添加 2 位小数。目前我正在使用以下,但对于整数,我想添加 .00。我需要为此编写自己的例程吗?
float floatingNumber = 1.00;
string string;
ostringstream stream;
stream << floatingNumber;
string += stream.str(); // result is 1 not 1.00
当浮点数为整数时,如何将浮点数转换为字符串并添加 2 位小数。目前我正在使用以下,但对于整数,我想添加 .00。我需要为此编写自己的例程吗?
float floatingNumber = 1.00;
string string;
ostringstream stream;
stream << floatingNumber;
string += stream.str(); // result is 1 not 1.00
如果您使用的是 c++11,则可以使用std::to_string()将浮点数转换为 std::string
float f(0.5f);
std::string str = std::to_string(f);
使用 auto 也是一样的:
auto f(0.5f); // f is a float
auto str = std::to_string(f); // str is a std::string
但是,您必须手动处理精度。