第3章. C言語

C++を勉強するためには、Cから始めた方が良いという人と、最初からC++で始めればいいよという人がいます。私は、そういう議論に参加できるほどの能力はありませんので、Cから始めたいという人のために、この章では、C専用のコンパイラを紹介することにします。ちなみに、C++コンパイラでもCのコンパイルは出来るので、無理にC専用のコンパイラを用意する必要はありません。

初心者には、日本語が扱えるもの、日本語のエラーメッセージがでるもの、日本語のヘルプが付属するものが良いと思います。定番として【LSI C-86 Ver 3.30 試食版】を紹介します。中級者以上には、統合開発環境の【lcc-win32】を紹介します。ただしすべて英語です。

◎LSI C-86 Ver 3.30 試食版

【LSI C-86 Ver 3.30 試食版】の入手法

LSI ジャパンのフリーソフトのページからダウンロードします。

GUIフロントエンドソフトの入手

LSI C-86試食版は、通常では、初期設定(パスの設定&_lccファイルの設定)をして、DOS窓から操作するのですが、のちのちの作業効率から考えて、GUIから操作可能にするソフトをインストールすることを、強くお勧めします。また、面倒な初期設定も自動的に行ってくれるため、つまらない設定ミスでLSI C-86が作動しないなどの不具合を防いでくれます。

お勧めのソフトは、次の2つです。お好きな方を選んでください。
1.CPad for LSI C-86 きときと(稀杜さんのサイト)
2.C言語を始めよう! AOK's Home Page(青倉克浩さんのサイト)

これらのソフトを使うと良いことが、もう1つあります。それは、標準では読みにくい添付ドキュメントが、とても読みやすくなることです。

導入方法

まず、LSI C-86試食版(lsic330c.lzh)をダウンロードし、解凍します。解凍後に生じたlsic330cというフォルダを、適当な位置に移動します。一般に、この種のフォルダは、なるべくルートに近いところに置いたほうが、のちのちトラブルが生じにくいようです。

通常ならば、ここで初期設定をしますが、フロントエンドソフトを使うため設定は不要です。上で紹介した、【CPad】ないし【C言語を始めよう!】をダウンロードし、解凍し、実行します。すると、LSI C-86の本体であるlcc.exeの場所をきいてきます。ここで場所を指定すると、次に_lccの設定をするかどうかきいてきますので、そのまま、おまかせで設定を完了させてください。

うまく設定できたか確認する

さて、フロントエンドソフトのエディタで、ソースを書いて見ましょう。例を挙げます。

#include <stdio.h>
int main()
{
    printf("こんにちは");
    return 0;
}

コピー&ペーストしてもらっても良いのですが、短いソースですから、ちょっと真似して実際に書いてみてください。単語によって、文字の色が自然とつきますね。でも、もっと驚くのが、改行すると必要なところでは自動でインデントすることです。閉じ括弧では逆に戻ってくれます。特別に気を使わなくても自然と見やすいソースになります。

一旦保存してから、コンパイル→実行してみてください。DOS窓が開いて、こんにちは と表示されたら成功です。

コピペするとエラーが出るんだけど…

初心者が伸びるコツは、先輩の書いたコードを真似て、どんどん書いてみることだというのが定説です。そんな時、長いソースを1から全部、手書きで写しているとイヤになっちゃいます。(私は…ね。) そこで、コピペして、部分的に改変してみたりするわけです。たとえば、上の例で言うと、"こんにちは"を"やあ\n\tどうも"に変えてみるとか、return 0 を return 10 にしたらどうなるのか?とか、いろいろ試すわけですね。

ところが、インターネットからサンプルソースをコピペしてコンパイルしようとしたら、わけのわからないエラーメッセージが出て、コンパイルできないということがあります。「な、なぜだ?」と思いますよね。「コイツ、間違ったソース載せやがって」なんて怒っちゃう人もいるでしょう。「でも、みたところ問題なさそうなのに」とも思うし、「こんな高名な人が間違うわけないだろう」とも思います。

次の例を、御覧下さい。

#include <stdio.h>
int main()
{
  printf("こんにちは");
  return 0;
}

Internet Explorerでは上の例と全く同じに見えるでしょう。コピペして、実行してみてください。どうですか?「不正な文字がある」とかいってエラーが出ました。それも4つも。もちろん、EXEファイルもできませんでした。

これは空白を表すのに、半角スペース・全角スペース・タブなどがあって、人間の目には同じに見えても、コンパイラにとっては意味合いが違うからというのが理由です。すぐ上の例は、全角スペースを使ってインデントしています。

言語講座サイト作成者によっては、この辺に気を使っている方もいますし、無頓着な方もいます。コピペさせないように、画像を貼り付けている方もいます。

まあ、画像の場合は無理としても、文字で書かれてさえいれば、自動整形してくれるソフトがあります。コピーしたものを一回これに通して整形してから、CPadなどに貼り付ければコンパイルOKです。

一括!整形美文C,C++

lcc-win32

上にも書いたように、C++コンパイラでもCを扱えるので、特別にC単独のコンパイラを入れる必要は無いと思うのですが、lcc-win32は、サイズがコンパクトな統合開発環境であること、完成したEXEファイルのサイズがコンパクトになること、などの利点があり、お勧めできると思います。また、なかなかいいリソースエディタがないなぁと探している人にもいいかもしれません。

【lcc-win32】の入手法

こちらのページから、ダウンロードできます。

導入方法

最低限 lcc-win32 と書いてあるファイルをダウンロードしてインストールします。そのほかにも、マニュアルなどが別途ダウンロードできます。


勉強になるサイト

C系列の言語は初心者には難しいとか言われますが、初心者にとって最も勉強しやすい言語だともいえるかもしれません。それは、参考書や解説サイトが非常に豊富にあるからです。

ということで、Googleなどで探せば、自分にあったサイトが、いくつか見つかると思います。

ここでは1つだけ、WisdomSoftさんを紹介しておきます。


目次へ>  <前の章へ>  <次の章へ