【C言語】printfで出力する文字列の文字数を指定する方法を解説

この記事では、C言語のprintf関数を使用して文字列の出力時に、文字列の長さを指定する方法について解説します。

目次から探す

文字列の長さを指定する方法

C言語のprintf関数を使用して文字列を出力する際に、出力する文字列の長さを指定する方法について解説します。

方法1: フィールド幅を指定する

フィールド幅を指定することで、出力する文字列の最小幅を指定することができます。

具体的な指定方法は以下の通りです。

printf("%[フィールド幅]s", 文字列);

例えば、フィールド幅を10と指定した場合、出力される文字列は最低でも10文字の幅を持つようになります。

もし文字列が10文字未満の場合は、空白文字が追加されます。

方法2: 精度を指定する

精度を指定することで、出力する文字列の最大幅を指定することができます。

具体的な指定方法は以下の通りです。

printf("%.[精度]s", 文字列);

例えば、精度を5と指定した場合、出力される文字列は最大でも5文字の幅に制限されます。

もし文字列が5文字を超える場合は、文字列が切り詰められます。

方法3: 文字列の一部を出力する

文字列の一部を出力する場合は、printf関数のフォーマット指定子に開始位置と終了位置を指定することで実現できます。

具体的な指定方法は以下の通りです。

printf("%.*s", 終了位置 - 開始位置, 文字列 + 開始位置);

例えば、文字列の2文字目から5文字目までを出力したい場合は、以下のように指定します。

printf("%.*s", 5 - 2, 文字列 + 2);

これにより、指定した範囲の文字列が出力されます。

以上が、C言語のprintf関数を使用して文字列の長さを指定する方法の解説です。

これらの方法を活用することで、より柔軟な文字列の出力が可能となります。

目次から探す