まず初めに(C言語事始め)


 とりあえず、基礎の基礎から始めたいと思います。僕がプログラムを勉強した方が良いと思っているのは将来役に立つと思っているからです。これだけ、パソコンが普及している時代に、表計算ソフトやワープロソフトが使えるのは当たり前、そのくらい出来る人は星の数ほどいます。その中に置いて、自分を他の人と差別化するために、これからはプログラムが必要になると考えています。ただ、その必要性の実感だけではこれから説明していくプログラム言語、とりわけ今回のC言語の理解は不可能だと思います。というのは、プログラムを好きになって、自分から積極的に学ぼうとしないと、分からなくなったときに投げ出す事が大いにあるからです。「とりあえず、勉強してみよう」よりは、「何々がしたいから」だとか、「おもしろそうさから」という理由を先に探した方が良いと思います。

 僕の今までの経験でC言語において、勉強していく段階でぶちあたる壁は2つあると思います。一つは「ポインタ」と呼ばれる物です。これだけは必ずぶちあたります。間違いありません。ここでの説明は避けますが、「ポインタ」で必ず誰もが分からなくなると、覚えておきましょう。ここでくじけてはいけません。もう一つが「アルゴリズム」です。格好良く横文字を使いましたが、意味としては「プログラムの流れ」です。ある機能を実現したい時、どうやってその機能を実現するかという、大まかな流れだとでも考えてもらって良いと思います。これにはプログラマが10人いれば、10通りのやり方があるわけです。プログラムは言語です。ここで説明出来る基本は数が限られていますが、それらを使って無限のプログラムの書き方があるわけです。また、プログラマ自身の経験などによっても、プログラムの書き方は変わっていきます。如何に効率よく、間違い難いように、他人が見ても見やすいもの、であるかの追求だと思います。よって、この「アルゴリズム」の修得には「自分でプログラムを作る」以外、方法が無いのです。だから、前段落で書いた「自分から積極的に」の意味が分かってもらえると思います。よって、ここに書いてある事、若しくはC言語の本を買ってそれらを100%理解しても、「他人の」プログラムの意味が理解できても、「自分の」プログラムはいつになっても作れないことになります。勉強している段階から、「例文において、別の機能を実現するにはどうすれば良いのだろう」と考えて、実際に作ってみる作業をしていくこと必要です。本やこのページを順番になぞって、理解していっても、力になりません。自分の頭を使う事が必要条件です。

 次に、アプリケーション(実行形式のファイル)の仕組みを簡単に説明しておきます。通常、お手持ちのパソコンにはハードディスクとメモリと呼ばれる物があります。最近の物ではハードディスクが数ギガ、メモリは32メガか、64メガだとおもいます。アプリケーションは使わないときはハードディスクにファイルとして保存されていて、実行時にメモリにファイルがコピーされます。アプリケーションの内容は命令の羅列になっていて、CPUと呼ばれる物がメモリに展開されたその内容を順番に実行していきます。命令は通常、人間が見ても分からない形式になっています。

 人間が見ても分からない形式、「バイナリ」形式になっています。「日本語」でも「英語」でもない、「機械語」です。インターネットに接続している方は、「文字化け」に出会ったことがあると思いますが、あんな感じです。ただ、命令の羅列になっているはずなので、当然、規則があり、それに乗っ取れば解読することが可能ですが現実的ではありません。解読するのが現実的で無ければ、そのファイルを直接作るのも現実的でないわけで、そのためにプログラム言語を使って処理を表します。プログラム言語は通常英語ですから、「英語→機械語」の変換の処理が必要です。これをしてくれるのが「コンパイラ」と呼ばれる物で、その変換することを「プログラムをコンパイルする」といいます。よって、プログラム言語で表した処理をコンパイルする事によって、アプリケーションが出来るわけです。

 そこで、「コンパイル」するためには「コンパイラ」と呼ばれる物が必要です。

 UNIX(Linux、FreeBSD等)をお使いの方は通常、インストールされているはずです。既に入っているはずなのでお金を出す必要はありません。「cc」、「gcc」等のコマンドでコンソールからコンパイルできるはずです。例えば「test.c」というC言語のファイルを作り、「gcc test.c」というコマンドを実行すれば、「a.out」というアプリケーションがカレントディレクトリに出来るので、それを実行して下さい。ファイル名の最後に「.c」をお忘れ無く。僕の大学の情報処理センターのX端末では、これがないためにエラーを返してきました。

 問題は Microsoft ユーザです。こちらはお金を出して入手しなければなりません。Windows95 以上をお使いの方は Visual C++ 4.0 以上が最適だと思われます。Visual C++ は使う人によって、機能てんこ盛りのエンタープライズ版から、初心者用のラーニングエディション、その中間のプロフェッショナル版がありますが、一番値段の安い初心者用のラーニングエディションで十分です。使いこなせる前にバージョンが上がりますから。それでも値段は学割(アカデミックパック)でほぼ1万円です。直前に書いた3つの Visual C++ にはそれぞれアカデミックパックがあり、通常の値段より安く買えます。購入時、学生のひとは学生証をお忘れ無く。

 マックをお使いの方は自身、全く分からないので以降も説明は一切しない予定です。ただ、C言語としては共通なはずなので、ご安心を。

 また、ここのページを見ていると言うことは、プロバイダーに加入しているというわけで、プロバイダーによっては、サーバ(Web-Page の作成の際、HTMLファイルを送るところ)に作成したプログラムを送り、コンパイルすることが可能です。ただ、これにはUNIXの知識が少しだけ必要になるので、「教えてくれー」と言う人が大ければ、この下に説明を追加したいと思います。あ、当然、この方法には接続している間に電話代やプロバイダーの接続時間が要りますから、念のため。

 次のページは Microsoft Visual C++ を使ってのコンパイラの使い方の説明をします。


Microsoft Visual C++ の使い方(その1)

C言語講座トップページ

TOP-PAGE

Web-Page制作者e-mailアドレス