初めに この記事の対象者はプログラミング初心者。 授業の復習がてら自分の言葉でまとめています。
前提 今回つかう例は前回の記事と同じもの
#include<stdio.h> int main() { int a; int b; int sum; a = 10; b = 20; sum = a + b; printf("output\n"); printf("%d+%d=%d\n", a, b, sum); } 変数の作成と値の代入は前回の記事で分かっただろう。 そこで今回はその下の行にある *printf()*について解説していく
標準出力とは 厳密な定義は置いておくとして、簡単にいうと コンピュータがした処理の結果をどうにかして、我々人間に伝える方法のことだ。
今回のコードだとターミナルに文字が出力されて、人間の目に見えるようになることをいう。
printf printf("output\n"); という記述がある。
printfというのはprint(印刷)という言葉が示すように、ターミナルに文字を表示させるための関数だ。
printf()の()の部分の中に入れておいた文字をターミナルに表示してくれる。 非常にシンプルだし、ここまではわかりやすい。
ここで先ほどのコードを見るとprintf("output\n"); “output\n"という文字がターミナルに表示されると思うだろう。
しかし実際にコンパイルして実行してみると。outputしか出てこない。
これは \n が 改行を表す呪文だからだ。
このように呪文がいくつかある。 これがややこしい!
今回学ぶ呪文:「変換文字」 \nは改行を表すということを説明したが、もう一つ呪文が出てきている。 %dだ。 これは標準出力に使うための「変換文字」と呼ばれるものだ。 意味がわからないと思う。
この呪文がやっていることは、特定の型のデータを参照して表示するということだ。
イメージを掴むためにコードを見てみよう。
printf("%d+%d=%d\n", a, b, sum); この部分少し複雑なので分割してみてみよう
printf( "%d+%d=%d\n", a, b, sum ); ,で値をくぎれるので、このコードの意味としては printf関数に「%d+%d=%d\n”」「a」「b」 「sum」の四つの値を渡しているということだ。 三つの%dはその後に渡された「a」「b」 「sum」の値を順番に参照して表示してくれる。