printf 関数の文字幅指定
更新 : 2007 年 11 月
書式指定の中で省略できる 2 番目のフィールドは、文字幅 (width) 指定フィールドです。引数 width では、負でない 10 進整数を指定して、表示する最小文字数 (文字幅) を制御します。出力値の文字数が指定した文字数より少ない場合は、- フラグ (左詰め) を指定したかどうかによって、最小文字数になるまで、値の左または右に空白が追加されます。width の前に 0 を付けると、最小文字数になるまで 0 が追加されます。これは、左詰めの場合は無効です。
文字幅指定では、値は切り捨てられません。出力値の文字数が指定の文字数より多い場合や、width を指定しない場合、値のすべての文字が精度の指定に従って出力されます。
文字幅指定にアスタリスク (*) を指定すると、引数リストの int 型の引数から値が提供されます。引数 width は、引数リストの中で、書式指定する値の前に指定します。文字幅を指定しない場合や、指定した文字幅が必要なサイズよりも小さい場合でも、フィールドは切り捨てられません。変換結果が指定した幅より長い場合は、その結果に合わせてフィールドが拡張されます。