2016-07-29 14 views
0

変数を使用してスペースの数を指定する方法はありますか?空白数の印刷

printf("%5d",someNumber); 

これは、その後5つのスペース番号が印刷されます。たとえば

は、私は基本的なprint文を持って言うことができます。変数var = 5を宣言し、代わりにスペースを決定する変数を使用する方法はありますか?私は特定の方法に形式のデータへのループの各反復の後にスペースの数を制御しようとしているので、私は聞いてるのよ理由がある

答えて

1

試してください:あなたはman 3 printfによる詳細情報を見つけることができます

printf("%*d", width, someNumber); 

+0

を使用し、唯一のnスペースを印刷するには

printf("%*d", n, someNumber); 

少なくともn文字、'*'を使用し、最小フィールド幅でintを印刷するには

数値を含む最小幅は 'width'であり、数値の前に 'width'スペースがないことを意味します。 – user3629249

0

フォーマット文字列は単なる文字列です。あなたはsprintf()などで独自に構築することができます:

printf(frmt,some_number); 

(ジェシー・チェンによって投稿さ可変のフィールド幅がある:あなたが例えば同じようprintf()で使用できるフォーマット文字列"%3d"を与えるウィル

sprintf(frmt,"%%%dd",iterator); 

iterator = 3場合必ずしもどこでも利用可能ではない)

1

"%5d"プリント少なくとも 5文字。先頭のスペースは、必要に応じて最初に印刷され、その後、必要に応じて'-'の記号、そして数字が印刷されます。このフォーマット文字列が言う

printf("%*s", n, ""); 
関連する問題