『Cプログラミング専門課程』目次第0章準備

準備 ■構成と読み方


本書は「第4章 メモリ」を中心に構成されています。この章だけはじっく りと読んでください。最初に第4章から読み始めるのも良いでしょう。ここで メモリの説明をいろいろな角度からしています。他の章は、全てこの章に基づ いて説明されています。

「第3章 文字列処理」は、順番に読んでいく真面目な読者のために、メモ リの重大さの布石の意味で設けています。メモリを知らないと起きる問題点を メモリの解説の前に置き、問題提起を試みました。文字列処理は気軽に使われ ますが、これくらいバグがよく見受けられる分野もありません。それも全てメ モリを理解していないためです。

「第5章 ポインタ」は、初心者に理解しづらいポインタの説明です。ポイ ンタが理解できないのは、メモリを理解していないからです。Cのプログラマ なら、「ポインタを使わずして、どこがCのプログラムか」と思うものです。 第3章から第5章までを理解したら、Cの最も重要な部分を把握したと言える でしょう。

「第6章 関数」は、第3章から第5章の理解の裏付けを行なっています。 関数は大変便利ですが、使いこなすには基礎知識が必要です。その基礎さえしっ かりしていれば、関数へのポインタなども自由に使えます。関数もメモリ上に あるという当たり前のことを説明しています。

「第7章 構造体」は手短にまとめています。メモリさえ理解していれば難 しい項目はありません。構造体は入門書でも詳しく説明されているし、基本的 な使い方で失敗しているのはあまり見たことがありません。

以上の第3章から第7章が、C言語の本体部分の解説です。

「第8章 プリプロセッサ」と「第9章 ヘッダファイル」はC言語の一部と もいえる部分で、ソフトウェア開発プロジェクトレベルの話では逆に中心にな るくらい重要です。しかし本書では、初心者でも必ず知っておくべき項目だけ の解説にとどめています。

最初の「第1章 入力ミス」と「第2章 バグ捜し」は前座です。こんな当た り前のことを書いて、と思うのではないかという内容ですが、多くの初心者を 見てきた経験からどうしても必要と思い書きました。先を急ぎたい人は飛ばし て第3章から読んでください。

バグについての解説をしているにも関わらず、デバッガを使っていません。 プログラム中にprintf文を入れて、変数の内容やアドレスとかを表示し確認し ています。これには大いに問題があります。実際のプログラミングでこういう ことをするのは望ましくありません。望ましくないどころか、最低最悪の方法 です。でも、本書ではprintf文を使う方法を選びました。

最大の理由は、色々なデバッガがあり、差異が無視できないくらい大きく、 デバッガ(コンパイラ)を特定しないと実際的でないためです。反面、printf 文による表示はコンパイラを選ばないので、どのコンパイラを使っている人で も確認できます。そういう理由でprintf文を使っていますが、printf文を使わ ずデバッガを使っての動作確認も各自試みてください。

最近はC++も普及しつつあり、C++を取りあえずCとして利用する場合もあ るし、将来C++へ移行する場合も考えられるので、最低限考慮すべき事柄につ いては適宜説明を加えました。


Copyright1996 Hirofumi Fujiwara. No reproduction or republication without written permission
『Cプログラミング専門課程』目次第0章準備