2

C ++では、次のようなコードがあります。

float hits = 10.12;
float mins = 2.19;
std::ostringstream ss;

ss.precision(2);

ss << std::fixed << hits << "%\n"
   << std::fixed << mins << "%";

std::cout << ss.str();

これは私にこの出力を与えています:

10.12%
2.19%

一方、代わりに小数点以下の桁数を揃えたいと思います。

10.12%
 2.19%

小数点の前にスペースを埋めて、小数点の前の2桁のスペースの幅を固定する方法はありますか?

4

2 に答える 2

6

を使用widthして列サイズを設定し、次にstd::rightを使用して出力を揃えます。

于 2013-03-13T13:59:52.253 に答える
3

浮動小数点値の出力幅と精度を決定するために、がありsetw()ます。setprecision()だからあなたはそれを次のように使うことができるはずです

ss << setw(8) << hits << "%\n"; ...

参考までにこちらをご覧ください。

于 2013-03-13T14:01:49.017 に答える