(6)[C] 初めてのCプログラム

[ トップ | 目次 | 前ページ | 次ページ ]


今度は,Cプログラムを作成し,コンパイルし実行してみよう.もし,現在(5)のMLプログラムの作成そ終了したところであれば,shell バッファに以下のコマンドを入力しフォルダを切り替えよう.

C:\SMLSharpAndC\sml>cd ../c
cd ../c

C:\SMLSharpAndC\c>

さらに,Meadowで以下のコマンドを実行し,MeadowのデフォルトフォルダをC\SMLSharpAndC\Cに変更しておくと便利である.

M-x cd

この後,ミニバッファに現れる現在のデフォルトフォルダC:\SMLSHarpAndC\smlを編集し,C:\SMLSharpAndC\cに変更しEnterを入力すればよい.

Cソースファイルの作成と起動

SML#コンパイラと異なり,Cコンパイラでは(現在のところ)対話型の処理はサポートされていない.Cプログラムは,以下のサイクルを実行することになる.

  1. ソースファイルの作成
  2. Cコンパイラ(gcc)でソースファイルをコンパイル
  3. 作成された実行形式ファイル(a.exe)を実行

では,まず,以下の内容のソースファイルをC:\SMLSharpAndC\C\test.cに作成してみよう.

#include <stdio.h>
main() {
  printf("Hi, there!\n");
}

これをコンパイルするには,以下のコマンドを実行すればよい.

c:\SMLSharpAndC\c>gcc test.c
gcc test.c

この結果a.exという実行形式ファイル(コマンド)が作られるので,それを以下のように起動すれば,test.cのプログラムを実行することができる.

c:\SMLSharpAndC\c>a.exe
a.exe
Hi, there!

c:\SMLSharpAndC\c>

Cプログラミングの基本原理

まず,test.cの内容を吟味してみよう.この構成要素の意味は以下の通りである.

  • #include <stdio.h> --- I/Oライブラリ使用宣言
  • main() { --- このコードがmainという特別の名前のプログラムであることの宣言
  • printf("Hi, there\n"); --- "Hi, there!"という文字定数に続き改行文字を印字する実行文.
  • } --- ひとまとまりのプログラム(ここではmainというプログラムの本体)の終了の区切り記号.

この中の実行プログラムコードはprintf("Hi, there\n");の部分である.これは,printfというライブラリプログラムを呼び出す一つの実行文である.このライブラリプログラムは与えられた文字列を端末に印字する.

Cプログラミングの基本は,何かの動作をする実行文を順番に書いていくことである.実行文は;(セミコロン)で終了する.各実行文の中には,定数や演算子を含んだ式が現れるが,実行文自体は式ではなく,値は持たない.複数の実行文は'{}で囲みひとまとまりの実行単位とすることができる.Cプログラムは,実行文のまとまりを,繰り返し実行や,条件に応じた実行などの制御文で組み合わせで構成される.それらの実行単位に名前を付け,コンパイル可能なプログラムとする.

このような構造を持つCのプログラミングの基本的な考え方は,メモリー状態が目的とした状態になるまで,文を(繰り返し)実行する,というものである.


[ トップ | 目次 | 前ページ | 次ページ ]