2

浮動小数点を文字列に変換し、小数点以下 2 桁を加算する方法。現在は以下を使用していますが、丸数字は.00を足したいです。そのために独自のルーチンを作成する必要がありますか?

float floatingNumber = 1.00;
string string;
ostringstream stream;

stream << floatingNumber;
string += stream.str(); // result is 1 not 1.00
4

2 に答える 2

7

手動で精度を設定し、フラグを使用して、使用できるようにする必要がありますfixed notation

setprecision 固定

stream << std::fixed << std::setprecision(2) << floatingNumber;
于 2013-05-16T08:36:13.210 に答える
1

c++11 を使用している場合は、std::to_string()を使用して float を 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

ただし、精度を手動で処理する必要があります。

于 2013-05-17T09:18:52.797 に答える