浮動小数点を文字列に変換し、小数点以下 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
手動で精度を設定し、フラグを使用して、使用できるようにする必要がありますfixed notation
stream << std::fixed << std::setprecision(2) << floatingNumber;
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
ただし、精度を手動で処理する必要があります。