第1章 はじめに

1−1.C言語とは

まずは、簡単なC言語の説明から始めます。

C言語は、1972年に UNIX というオペレーティングシステムの開発用言語として、AT&Tベル研究所のカーニハンとリッチーによって開発された、システム記述用のコンパイラ言語である。

最初は、DEC社の「PDP-11」というミニコンピュータ上で UNIX専用に用いられていたが、その有用性により現在では、ワークステーション、パーソナルコンピュータなど、さまざまなコンピュータで広く利用されている。カーニハンとリッチーの共著による解説書『The C Programming Language』をもとに作成されたC言語は「K&R準拠のC言語」と呼ばれている。そして、1989年に機能が改良・拡張された標準規格が ANSI によって制定された。この規格に準拠したC言語は「ANSI-C」と呼ばれる。

(特徴)
(コンピュータ・エージ社 基本情報技術者テキスト システム開発と運用 より)

以上は私が専門学校で使っている基本情報技術者試験対策のテキストからの引用です。日本国内では、国際規格のISO 9899(内容はANSI Cと同一)を元に「JIS X3010」が定められました。

初めてプログラム言語を学習する方にはこれらの記述は難しいかもしれませんが、学習を続けているうちに少しずつC言語の特徴が理解できてくると思います。まずは臆せず先に進んで行きましょう。


1−2.Cプログラムの作成手順

(1)エディタでソースプログラムを作成

プログラム作成の第一歩は「エディタを使ってのプログラム作成」です。 要はC言語の命令文を記述してファイルを作るわけです。

エディタで作成したファイルの拡張子は「.c」になり、このファイルを「ソースプログラム」と呼びます。 「sample」という名前でプログラムを作るとすると、そのソースプログラムは「sample.c」になります。

エディタは何でもかまいません。WZ、秀丸、Vi、メモ帳 …。自分の使いやすいエディタを使ってください。

(2)コンパイル

ソースプログラムは人間が自分たちにわかるようにコンピュータ言語で記述したものなので、コンピュータはこのソースプログラムを直接理解することができません。コンピュータに理解させるためには、「コンパイル」という機械語への翻訳が必要になります。 翻訳された機械語は「オブジェクトモジュール」と呼ばれ、Windows上で動作する Cコンパイラでは、ファイルの拡張子は「.obj」が多くなります。

C言語のコンパイルは Cコンパイラで行われます。 1972年に開発されたC言語ですが、長い間に多くの企業で開発が進み、今ではたくさんの Cコンパイラが用意されています。 この Cコンパイラに応じて、たくさんのC言語が存在しています。OSにWindowsをお使いの方でしたら、以下のようなコンパイラを使うとよいでしょう。

無料のコンパイラ : LSI C-86 試食版
 Borland C++ Compiler 5.5 (注1)
無料の統合開発環境 (注2) : Visual C++ 2010 Express Edition
 Turbo C++ Explorer

(注1) C++ は C言語をオブジェクト指向に拡張した言語であり、C言語のソースプログラムをコンパイルすることが可能です。
(注2) 統合開発環境とは、エディタ、コンパイラ、デバッガ(プログラムの誤りの発見や修正を行うソフトウェア)など、プログラミングに必要なツールがすべて揃っている環境のことです。

(3)リンク

C言語で記述されたソースプログラムをコンパイルして機械語に翻訳した時点でもう実行できそうですが、その前にもう一仕事あります。

コンパイルしてできあがったオブジェクトモジュールはあくまでもソースプログラムを機械語に直したにすぎません。 実は、実行できる形式の「実行モジュール」はオブジェクトモジュールといくつかの部品(Cコンパイラのメーカが用意してくれた「関数ライブラリ」や、開発者が作った他のオブジェクトモジュール)をひとつにまとめたものなのです。 このひとつにまとめる作業を「リンク」と呼び、リンクするプログラムを「リンカ」と呼びます。

Windows上で動作するCコンパイラでは、実行モジュールのファイルの拡張子は「.exe」になります。


※ 補足説明として「少し詳しい開発環境設定の説明」をご用意しました。併せてご覧ください。(たぶん「かなり詳しい」です。)

(Cプログラムの作成手順)
Cプログラムの作成手順
(注) ファイル拡張子は Windows上で動作するCコンパイラの場合。


1−3.Cプログラムのスタイル

Cプログラムのスタイルについてまとめます。 4 と 5 については最初はわかりづらいかもしれませんが、プログラムの学習を進めて行くにつれて慣れてくると思います。 とりあえず、1,2,3,6 について理解しておいてください。

  1. プログラムは main( void )関数で書き始める。
  2. 慣用的に小文字を用いて書く。
  3. 文の終わりにセミコロン( ; )をつける。
  4. 複合文は { } で囲み、ブロック化する。
  5. インデント(字下げ)で見やすくする。
  6. コメント(注釈)は /* と */ で囲む。
プログラムサンプル
(注1) 第1行目の #include <stdio.h> は「printf()」という関数の宣言をしている
「stdio.h」というファイルを取り込むという記述です。
第18章で詳しく説明していますが、今はとりあえず、書かなければならない部分だと理解しておいてください。

(注2) main(void) の「void」と 最終行の「return 0;」については第11章 関数で説明します。
とりあえず、書かなければならない部分だと理解しておいてください。

(注3) 「int main(void)」の「int」については第11章 関数で説明します。

TOP▲ 次ページ◆◆

banner
「初心者のためのポイント学習C言語」
Copyright(c) 2000-2004 TOMOJI All Rights Reserved