新人Y子のプログラミングのお部屋13

さて、前回から引き続きprintf関数の使い方について見ていきましょう。
[speech_bubble type=”std” subtype=”R1″ icon=”sanoyu-normal.png” name=”新人Y子”]printf関数に、4つ引数を渡したのはなぜでしょう?
[/speech_bubble]
[speech_bubble type=”std” subtype=”L1″ icon=”itokuma-normal.png” name=”しげちゃん先生”]printf関数のプロトタイプ宣言を、思い出してください。
[/speech_bubble]

↓ printf関数のプロトタイプ宣言

[speech_bubble type=”std” subtype=”R1″ icon=”sanoyu-normal.png” name=”新人Y子”]たしか、1つ目の引数は必須で、2つ目以降の引数は任意でしたね。
[/speech_bubble]

[speech_bubble type=”std” subtype=”L1″ icon=”itokuma-normal.png” name=”しげちゃん先生”]はい。このため、printf関数の場合、1つ目の引数が重要になります。
[/speech_bubble]
[speech_bubble type=”std” subtype=”R1″ icon=”sanoyu-normal.png” name=”新人Y子”]その1つ目の引数に、この例では、”%d + %d = %d\n” という文字列を渡していますね。
これは、どういう意味でしょう?
[/speech_bubble]
[speech_bubble type=”std” subtype=”L1″ icon=”itokuma-normal.png” name=”しげちゃん先生”]はい、1つ目の引数は、出力する文字列を指定すると同時に「書式」を指定します。
[/speech_bubble]
[speech_bubble type=”std” subtype=”R1″ icon=”sanoyu-normal.png” name=”新人Y子”]書式?
[/speech_bubble]
[speech_bubble type=”std” subtype=”L1″ icon=”itokuma-normal.png” name=”しげちゃん先生”]この例では「%d」の部分が「書式」にあたります。「書式」部分は、printfの2つ目以降の引数の値に置換されます。
[/speech_bubble]


[speech_bubble type=”std” subtype=”L1″ icon=”itokuma-normal.png” name=”しげちゃん先生”]”%d + %d = %d\n”の最初の「%d」が、変数aに対応します。
[/speech_bubble]
[speech_bubble type=”std” subtype=”R1″ icon=”sanoyu-normal.png” name=”新人Y子”]なるほど。では、2つ目の「%d」が変数b、3つ目の「%d」が変数cに対応するのですね。
[/speech_bubble]
[speech_bubble type=”std” subtype=”L1″ icon=”itokuma-normal.png” name=”しげちゃん先生”]その通りです。
[/speech_bubble]
[speech_bubble type=”std” subtype=”R1″ icon=”sanoyu-bikkuri.png” name=”新人Y子”]答え分かってきたかも!
[/speech_bubble][speech_bubble type=”std” subtype=”R1″ icon=”techtrageman-normal.png” name=”テクトレージマン”]次回に続く[/speech_bubble]
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次