「Coding Ground」というサイトでC言語をお勉強しています。
では「Hello, World!」が表示されるプログラムを実行してみましょう。

しげちゃん先生
ボタンを押してください。
新人Y子
はい、押しました。

しげちゃん先生
右側のと書かれたところに、「Hello, World!」という文字が出力されました。これが実行結果です。

新人Y子
早いですね。もう実行されたのですね。
あれ?「Hello, World!」だけでなくその上にも何か出力されていますが、これも出力結果の一部でしょうか?


しげちゃん先生
良い所に気がつきましたね。
これは、このプログラムが出力したものではありません。
まず上の「gcc -o main *.c」は、コンパイルしているシーンになります。

新人Y子
なるほど、実行直前にコンパイルを行っているのですね!
あと、その前の「$」は何ですか?

しげちゃん先生
これは、プロンプトといいます。コンピュータ側が「$」を出力して、コマンド入力を促している状態です。
ここでは、「$」に続けて、「gcc -o main *.c」とコマンドを打ち込んで、コンパイルを行っています。

新人Y子
コマンド「gcc -o main *.c」の詳細を教えてください。

しげちゃん先生
「gcc -o main *.c」で1つのコマンドになります。コマンドを分離すると以下のような意味合いになします。
「gcc 」
・・・ CコンパイラGCCでコンパイル
「-o main 」
・・・ mainというファイル名の実行形式を出力
「*.c」
・・・ コンパイル対象ソースコードを指定
(「*.c」は、拡張子が「.c」の全ファイルという意味)

新人Y子
拡張子「.c」は、C言語のソースコードの拡張子ですか?

しげちゃん先生
はい、その通りです。今回のソースコードも、「main.c」になっている事が分かると思います。


新人Y子
あと、「実行形式」って何ですか?

しげちゃん先生
「実行形式」は、実行できるファイルの事です。
今回、上記のコンパイルコマンドで、「main」というファイル名の実行形式を生成しています。

(ちなみに、WINDOWSでは拡張子「.exe」が実行形式ですので「main.exe」とする必要があります。本サイトは、WINDOWSではないため「.exe」は付けません。)

しげちゃん先生
次に、「$main」の部分ですが、mainという実行形式を、実行しなさいという意味です。
その結果、実行形式「main」が実行され「Hello, World!」が出力されたの状態となります。

新人Y子
なるほど!

テクトレージマン
次回に続く
0