1. ホーム
  2. c

[解決済み] printfのプレースホルダーとして、%0.2lfと%.2lfの違いは何ですか?

2022-02-16 02:14:13

質問内容

をいくつでも置けることは承知しています。 0 は、プレースホルダの幅の前にゼロパディングを実装しています。例えば printf("%02d", 6); プリント 06 .

しかし、1つの 0 プレースホルダーの精度の前に?たとえば printf("%0.2lf", 0.123);printf("%.2lf", 0.123); の場合、出力は 0.12 .

何もしない場合、好ましいフォーマットはありますか?

解決方法は?

これらは等価です。もし、"%07.2" を使うなら、先頭にゼロを追加することで違いが出ます。

Edit: 元々は "%04.2" でした。もちろん、小数点以下2桁のフロートは常に幅4なので、何の違いもありません。