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


前回は、「printf」が何をしているのかを見ました。今回は「#include」を見てみましょう。
多くのC言語のソースコード参照していただくとわかるように、必ずと言って良いほど、「#include <stdio.h>」がありますが、これは何のためでしょう?

[speech_bubble type=”std” subtype=”R1″ icon=”sanoyu-normal.png” name=”新人Y子”]1行目の「#include <stdio.h>」は何をしているのですか?
[/speech_bubble]
[speech_bubble type=”std” subtype=”L1″ icon=”itokuma-normal.png” name=”しげちゃん先生”]#includeは、ソースコード中に、別のソースコードを読み込む指定となります。
[/speech_bubble]
[speech_bubble type=”std” subtype=”R1″ icon=”sanoyu-normal.png” name=”新人Y子”]という事は、この例では「stdio.h」というファイルを読み込んでいるのですね。
[/speech_bubble]
[speech_bubble type=”std” subtype=”L1″ icon=”itokuma-normal.png” name=”しげちゃん先生”]はい
[/speech_bubble]

[speech_bubble type=”std” subtype=”R1″ icon=”sanoyu-komatta.png” name=”新人Y子”]でも、何のために「stdio.h」をincludeするのかしら?
[/speech_bubble]

[speech_bubble type=”std” subtype=”L1″ icon=”itokuma-normal.png” name=”しげちゃん先生”]「stdio.h」とは、「standard I/O(スタンダードアイオー)」と呼ばれ、「標準入出力」命令を使う場合に使用します。
このプログラムでは、標準入出力命令である「printf」を使用するため、「stdio.h」をincludeしているのです。
[/speech_bubble]

[speech_bubble type=”std” subtype=”R1″ icon=”sanoyu-normal.png” name=”新人Y子”]使用する命令に応じて、includeする訳ですね。
[/speech_bubble]
[speech_bubble type=”std” subtype=”L1″ icon=”itokuma-normal.png” name=”しげちゃん先生”]はい。
ちなみに、このように拡張子が「.h」のC言語ソースコードは、通常のC言語ソースコードと区別するために「ヘッダファイル」と呼ばれています。
[/speech_bubble]

[speech_bubble type=”std” subtype=”R1″ icon=”sanoyu-normal.png” name=”新人Y子”]ところで、stdio.hは誰が用意してくれているのでしょうか?
[/speech_bubble]
[speech_bubble type=”std” subtype=”L1″ icon=”itokuma-normal.png” name=”しげちゃん先生”]stdio.hなどはC言語では標準的なヘッダファイルのため、開発環境を構築した際にインストールされます。
ですので、開発PCの中を探すとstdio.hファイルがあるはずです(*注)
これらの標準的なヘッダファイルは、C言語のプロが作成していますので、中身を覗いてみると自分でヘッダファイルを作成する際に勉強になりますよ。
[/speech_bubble]

[speech_bubble type=”std” subtype=”R1″ icon=”sanoyu-smile.png” name=”新人Y子”]なるほど!
ところで、Y子、「stdio」の事「スタジオ」って読んでました! やはり、違ったのですね(笑
[/speech_bubble]

[speech_bubble type=”std” subtype=”R1″ icon=”techtrageman-normal.png” name=”テクトレージマン”]次回に続く[/speech_bubble]

(*注)
今は、「Coding Ground」を使ってC言語をお勉強中ですので、まだ開発環境を構築してないY子PCには、stdio.hファイルは存在しない状態です。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次