【C言語入門】§1-4 対話的に表示させよう (scanf関数)

【C言語入門】§1-4 対話的に表示させよう (scanf関数)

[toc]

今回のC言語入門では、キーボードから入力された値を読み込んで、対話的に表示させてみましょう。
そして、C言語の難関と言われる「ポインタ」についても少し触れていきます。

それでは、はじめましょう!

キーボードから読込んだ値を表示させよう

まずは、このソースコードを打ち込んで実行して下さい。

コンパイル後、正常に実行すればこのように表示されます。今回は、整数「99」を入力しました。

【解説1】scanf(スキャンエフ)で値を読込む

キーボードから入力された数値などを読み込むにはscanf関数を使います。
今回は「入力された10進数の値を読み込んで、変数noに格納しなさい」といった意味になります。

また、scanf関数ではputs関数と同じように、\nを入れなくとも改行されます。

【解説2】scanf関数とポインタ

変数の前に記号&(アンパサンド)が付いていますね。
&は「アドレス演算子」と呼ばれ、変数が割り当てられているメモリのアドレスを取得します。

scanf ( “%d” , &no ) ;

実は、scanf関数では関数内に受けとった値を、関数外の変数に格納することはできません

そういった場合は、変数が割り当てたメモリ上のアドレスポインタを使って間接的に格納してあげます。

今回でいうと、 「scanfの関数内で値を受けとる変数」がポインタとなり、入力された値を「&で取得したnoのアドレス」に間接的に格納したことになります。

詳しくは、ポインタの章で説明しますので、今は「scanf関数の引数には&を付ける」ということを覚えて下さい。

おまけ

ちなみに、&を付けないとWARNINGメッセージが表示され、実行結果もエラーとなります。

C言語入門カテゴリの最新記事