2008-09-16 2 views

答えて

8

% [幅] [精度]

幅は小数点を含むべきです。

8.2は8文字の幅を意味します。ポイントの前に5桁、後に2桁。 1文字はポイント用に予約されています。 = 8

7

は修飾子です:

sprintf(S, "%.10f", val); 

男のsprintfは、フォーマット指定子の詳細多くの詳細を持っています。

+0

ちょうどメモ:彼がダブルを使用している場合は、 "lf"をより正確に使用しますか? –

+0

いいえ、%fは倍精度に適しています。 – ChrisN

+0

浮動小数点数は約6桁の精度しか持ちません。ダブルに%lfを使用してください。 – EvilTeach

1

注意 - sprintfの出力はCロケールによって異なります。これはあなたが望むものかもしれません。ロケールのdocs/manページのLC_NUMERICを参照してください。

1

%fは浮動小数点値です。

代わりに%lfを試してみてください。ダブルス(長いフロートと呼ばれていました)のために設計されています。

倍x = 3.14159265;
printf( "15.10lf \ n"、x);

関連する問題