プログラムの実行

さきほど入力したプログラムを実行してみる

プログラムをコンパイルする

コンパイルとはなにか。それは、プログラムをコンピュータが実行できる形式の(機械語で書かれた)ファイルになおすことだ。世の中には、コンパイルせずにいきない実行できる"スクリプト言語"というものもあるのだが、C言語は必ず コンパイルして、機械語になおさなくてはならない。
教育用計算機でCプログラムをコンパイルする命令はgccである。test1.cをコンパイルするには
$gcc test1.c
とする。すると、コンパイルされた機械語ファイルがa.outという名前でできる。 もっとも、最初からうまくいくとは限らない。大抵はなにかしら失敗するだろう。この時点で画面に"error"とか"warning"とかいうメッセージが出たら、プログラムのどこかしらに間違いがあると思ってよい。もう一度geditで見直そう。

 このままでは、どんなプログラムもみんなa.outという名前になってしまうが、同じ名前のファイルを複数持つことはできないので、結局一番最近コンパイルされたプログラムがa.outに格納される。
そんなのは嫌だ、test1.cをコンパイルしたものはtest1_ugokuという名前にしたい、という向きは
$gcc -o test1_ugoku test1.c
とすればよい。コンパイル結果は-oのうしろに書いた名前で格納されるので、好きな名前をつけることができる。もっとも、test1.cをコンパイルしたものはtest1という名前にするのが普通だろう。

プログラムを実行する

実は、コンパイルしてできたファイルは、それ自体が一種のコマンドである。a.outを実行するには、前に"./"をつけて
$./a.out
とすればよいし、名前がtest1_ugokuなら
$./test1_ugoku
で実行できてしまう。おお、簡単。

 もっとも、もしかしたら、./をつけず、単にa.outtest1_ugoku
$a.out
$test1_ugoku
とすれば実行できるかもしれない。 しかし、./をつけないと実行できないシステムもあるし、そのほかの理由もあって、自分で作ったプログラムについてはこれをつける習慣にしたほうがいいかもしれない。最近はつけるのがトレンド。
前へ戻る 次へ進む