39

ダブルがファイルに科学的記数法で印刷されるのを防ぐ必要があります。

私がこれをするとき

outfile << X;
4

4 に答える 4

39

setprecision(n)浮動変数のフォーマットを設定するには、showpointとの組み合わせを使用できますfixed。パラメータ化されたストリームマニピュレータを使用するsetprecision(n)には、iomanipライブラリを含める必要があります。

#include <iomanip>

setprecision(n):フローティング出力をn場所に制限します。一度設定すると、残りのストリーム出力で明示的に設定を解除するまで設定されます。

fixed:すべての浮動小数点数が同じ方法で出力されるように強制します。したがって、精度が4桁に設定されている場合、、、6.2および6.20両方が次のように出力されます。

6.2000
6.2000

showpoint:明示的に設定されていない場合でも、浮動小数点変数の小数部分が強制的に表示されます。たとえば、次の4ように出力されます。

4.0

それらをすべて一緒に使用する:

outfile << fixed << showpoint;
outfile << setprecision(4);
outfile << x;
于 2010-02-25T17:28:48.707 に答える
7

使用例は 次のとおりですhttp://cplus.about.com/od/learning1/ss/clessontwo_4.htm

あなたの質問の使用に従って

  std::cout << std::fixed << a << std::endl;
于 2010-02-25T16:43:34.953 に答える
6

上記の回答はすべて役に立ちましたが、質問に直接答えるものはありませんでした。

outfile.setf(std::ios_base::fixed);
outfile << x;

@moogsリンクで答えを見つけました:http ://www.cplusplus.com/reference/iostream/ios_base/fmtflags/

これがデモプログラムです:http://ideone.com/FMxRp1

于 2013-10-07T10:17:54.947 に答える
2

フォーマットフラグを使用できます   

http://en.cppreference.com/w/cpp/io/ios_base/fmtflags

于 2010-02-25T16:33:37.773 に答える