「C++プログラマのためのC言語入門」はいくつかに分割して進めていこうと考えています。具体的には、対象とするC++のバージョン、そしてC言語のバージョンによって分割することにします。まずは「C++98プログラマーのためのC89入門」からです。
対象とするC++プログラマー
「C++98プログラマーのためのC89入門」の読者は主にC++98を使っている方を対象とします。ただし、C++03もC++98とさほど大きな違いはありません(これらの違いが正確に分かるC++プログラマーは少ないと思います)ので、どちらも対象読者と考えています。
C言語のバージョン
C言語の歴史は古く、標準規格に限ってもいくつかのバージョンがあります。本来であれば、最新版の規格であるC17を対象とすべきかもしれません。しかし、最初は一番基本である最初の国際標準規格であるC89を対象にしたいと思います。C言語のバージョンについての詳細な情報は、当サイトの別の記事である「C言語再入門」の第1回 C言語とはを参照してください。
C++98の標準Cライブラリは、C95をベースにしています。C89とC95のちがいは、おおむねライブラリに関する内容だけです。すなわち、<iso646.h>, <wchar.h>および<wctype.h>
どの処理系を対象にするか
本連載では、特定の処理系に依存するのではなく、可能なかぎり一般的な内容にしたいと思います。ただし、具体例を挙げるために必要な場合には、特定処理系を採り上げる可能性はあります。その際は、都度どんな処理系を想定しているかを明記するようにします。
なお、特定の処理系には依存しないといっても、フリースタンディング環境かホスト環境かは区別しなければなりません。フリースタンディング環境というのは、C++でいうところの「自立処理系」の環境であり、ホスト環境というのは、C++でいうところの「依存処理系」の環境のことです。本連載では、特に指定がない場合はホスト環境を想定します。フリースタンディング環境については、それを解説する回を設けたいと思います。