サイトマップ / C言語講座出入り口総目次目次:入出力(1)>はじめに

青い直線

はじめに

青い直線

このソース→[最も短いCのソースプログラム]

プログラム言語とは何か

コンピュータに理解できるのは、0か1です。私たちに理解できるのは私たちの言葉 (自然言語)です。コンピュータに何かさせるのに、コンピュータの言語で命令するのはほとんど不可能です。そこで、一度自然言語とコンピュータ言語との間の言語で、命令を書いてそれをコンピュータの言語に翻訳します。そのための言語がプログラム言語です。

低級言語高級言語

プログラム言語には色々な種類がありますが、全て自然言語とコンピュータ言語との間に位置します。その位置がコンピュータ言語に近いものを、低級言語といいます。自然言語に近いものを高級言語といいます。

低級言語は、メモリを直接操作しやすくなりますが、コンピュータ言語に近いため、可読性が低くなります。高級言語は自然言語に近いので、意味がわかりやすいという特長があります。Cは高級言語です。

インタープリタ型言語とコンパイラ型言語

以下の説明文にもあるように、それぞれ得失はありますが、この講座では後者を勧めます。

インタープリタ型言語:実行時に、コンピュータの言葉に翻訳されてプログラムが走ります。インタープリタというソフトウエアが翻訳を行います。インタープリタがなければ、プログラムを実行できません。また、この言語で書いたソフトウエアを売るとすると、顧客からプログラムの中身が丸見えで、かつ、勝手に書き換えられてしまうかも知れません。

コンパイラ型言語:コンパイルという作業を前もって行い、単独で実行できるファイルを作っておくものです。このタイプをコンパイラ型といいます。コンパイルは、プログラム言語をコンピュータ言語に翻訳する作業です。Cはコンパイラ型言語です。

C言語のごく簡単な歴史

C言語は1972年カーニハンとリッチー(Brian W. Kernighan and Dennis M. Ritchie)によって作られました。その後、ANSI(American National Standards Institute)による改訂を経て、現在に至ります。

この講座ででてくるC言語は、100% ANSIの言語仕様に準拠しております。現在使われている Cコンパイラは、例外なく、ANSIに準拠しているはずです。従って、この講座ででてくるプログラムはコンピュータの機種、Cコンパイラの種類に無関係に、コンパイルし、実行できるはずです。

しかし、ANSIの規格はそれ程きつくないので、Cコンパイラによる差異も一部あります。その差異も極力考慮して、このシリーズを作りました。

C言語の特長

最近出てきた言語も、多くはC言語に良く似ています。それらの言語は改訂がまだ頻繁に行われていて、仕様が安定していません。プログラム言語の学習はC言語から入っていくのが良いと思います。

プログラムを見て、それが何をするものか直感的にわかる。これを、可読性が高いと言います。Cプログラムでは、ソースを見やすくするため、スタイルにこだわります。

Cは高級言語です。しかし、低級な操作(メモリを直接操作)も得意です。ユーティリティーが豊富にあるので、ソフト開発環境が良好だという利点もあります。その他、色々あります。あとは、学習していく過程でわかってくると思います。

コンパイルの手順

次に、どのような過程を経てソフトウエアが出来上がるのかについて説明します。

まず、ソースプログラムを作ります。ソースプログラムはテキストファイルです。

ファイルには、テキストファイルとバイナリファイルがあります。テキストファイルは、印刷可能な文字と、タブ、改行コード、スペース(これらを、区切り文字または空白文字といいます)で成り立っています。そして、最後にファイルの終わりを示すEOF(End of File)という、特別な値が書き込まれています。バイナリファイルには、その他のコードも含まれます。

テキストファイルは 'エディタ' と呼ばれるソフトウエアで作ります。エディタは、一見ワープロのように見えますが、テキストファイル専用のワープロと考えて下さい。Windows では、「メモ帳」がこれに当たります。

拡張子(ファイル名のピリオドに続くアルファベット)は必ず'c'にして下さい。拡張子が'c'のファイルをCコンパイラは探します。

ソースプログラムが出来上がったら、いよいよコンパイルです。次に示す過程を経て、実行可能なソフトウエアが出来上がります。

プリプロセッサが起動します。

プリプロセッサは、コンパイル作業にかかれるよう準備します。例えば、プログラムのある行に、"#define pi 3.14"と書いておくと、この行以降に'pi'があると、プリプロセッサは3.14に書き換えてくれます。

プリプロセッサの作業が終わると、次に、コンパイラが起動します。コンパイラはソースプログラムの文章の文法をチェックします。Cコンパイラは、このチェックが少々甘いといわれています。文法に問題がなければ、ソースプログラムを基にオブジェクトファイルが作られます。文法に間違った箇所があると、コンパイル作業ができないので、エラーメッセージを出して、コンパイラは停止します。

コンパイルに成功したら、リンカというソフトが起動して、オブジェクトファイルを実行可能なファイルにします。これで、新しいソフトウエアができあがります。これ以上詳しい説明は、必要になった時点でしたいと思います。

今までの説明でおわかりいただけたと思いますが、今後の学習では、エディタとCコンパイラが必要になります。

必要なソフトウエアはエディタとCコンパイラ

あなたが、Windowsをお使いでしたら、付属の「メモ帳」をテキストエディタとして使用可能です。しかし、Cのソースプログラムを書くには使い勝手がよくありません。例えばタブを三つキーボードから打ち込んで改行すると、エディタは次の行に自動的に、タブを三つ書き込んでくれます。これはCのソースプログラムを書くには、必要な機能です。「メモ帳」にはこの機能がないので、もう一度タブを三つ打ち込まなくてはなりません。

ソースプログラムを書くためのエディタを購入されることを勧めます。また、Cコンパイラの中にはエディタが付属しているものもあります。Cコンパイラをまだ購入されていないなら、エディタが付属しているか確かめて下さい。

このソース→[最も短いCのソースプログラム]

青い直線

/* (C) 2000- YFプロ. All Rights Reserved. */    提供:C言語講座−それ自体コンパイルできる教材を使った講座です−

青い直線

サイトマップ / C言語講座出入り口総目次目次:入出力(1)>はじめに