第2回. main()で"へろ〜ワールド" Written by Rorrim んじゃ第2回って事で、まずプログラムの基本「HelloWorld」をC言語で作りましょう。 前回の講義(?)を思い出してください。 ファイルの名前はなんでもいいので、仮にtest1としておきます。 また、このファイルがC言語のプログラムであると言う事をコンパイラに 認識させる為、識別子(拡張子)「c」が必要です。 %vi test1.c これでtest1と言う名前のC言語のプログラムを書く準備が整いました。 まず覚えて欲しいのは、Cプログラムの「約束事」です。 Cのプログラムは関数と呼ばれる「部品」の寄せ集めで出来ています。 この関数と言うのは、数学と同じように、入力に対して出力があります。 またCの世界では、各々の関数はFunc_name ()と言う風に 「()」で区切られています。 実際に「Hello world」を表示させるプログラムは、 1 #include 2 main () 3 { 4 printf("Hello world¥n"); 5 } 以上です。簡単でしょ? 行頭の123...は、説明の為の行表示ですから 実際のプログラムでは、必要ありません。 では、コンパイルをしましょう。 システムによって違うかも知れませんが、一般には「cc」のコマンドを使います。 %cc test1.c んで、出来た実行可能形式のファイルが「a.out」です。 実行してみます。 %a.out 画面には、 ------------------------------------------------------------------ Hello world % ------------------------------------------------------------------ と表示されたはずです。 では、実行可能ファイルの名前を変えて保存しておきましょう。 %mv a.out test1.out どうですか?ここまで出来ましたか? で、このプログラムを簡単に説明しますと 1 標準入出力(STanDard Input/Output)ファイルの読み込み。 後ろのhは、ヘッダであると言う事の識別子ってだけで 気にする事はありません。 2 このプログラムの場合、関数の入れ物の名前はmainです。「()」を忘れずに。 3 main関数は、大きな入れ物ですので、何処から何処までがmain関数なのか 「{}」で区切ってあげましょう。 4 printf関数を使って、「Hello world」を表示させます。 ¥マークはバックシュラッシュです。 5 「}」は、main関数の終わりである事を示します。 ってこれだけじゃ、分からないですよね? 詳しく見ていきます、分からない所はC言語の入門書なんかを見てください。 1 #includeは、ヘッダ(関数を集めたものの集まりだと思ってください) の読み込みを指示します。 このプログラムの場合、文字とかを表示させたいので、 InputやOutput関係を司る「stdio.h」を読み込ませます。 ヘッダファイルには、この他数学の「math.h」等があります。 2 このメイン関数については、詳しい説明はなしにします(笑)。  マジックワードだと思って下さい。 3 printf()関数を使って、標準出力(ディスプレイ)に表示させます。  ここで、表示させたい文字列は「"」で括ります。  また、バックスラッシュの後の「n」は改行という意味です。  これら¥nなどは「拡張文字コード」と言って色々な機能があります。  後で、その機能は、表にします。 ここで重要なのは、行末の「;」です。 セミコロンで終わる式(C言語で許される表現)は、実行文と呼ばれます。 さて、どうでしょう? これでこの章は終わりますが、ちゃんと解ったでしょうか? 最後に、拡張文字コードの機能説明です。 ¥n 復帰して改行する ¥t 水平タブ ¥b バックスペース ¥r 復帰 ¥f 改行 ¥¥ バックスラッシュ ¥' シングルクォーテーション ¥nnn 任意の8進数(nnnは3桁までの8進数字列) ¥xnn 任意の16進数(xは16進表記を意味し、nnは16進数字列) ANSI規格による拡張文字コード ¥a ベルを鳴らす ¥v 垂直タブ ¥? クエスチョンマーク ¥" ダブルクォーテーション 色々ありますが、各自で試してみて下さい。