C言語とは


C言語の特徴

C言語は、1970年代に、アメリカのベル研究所で開発された プログラミング言語である。OSはアセンブリ言語で書くのが常識だった 時代にUNIXはC言語で記述され、その実力が注目された。 特徴は、

C言語の規格

K&R

C言語は最初に登場したときは規格書のようなものが無く、 仕様は曖昧だった。そのころのC言語の仕様は、 B. W. Kernighan (カーニハン) と D. M. Ritchie (リッチー) に よる「The C Programming Language」という本によって 事実上規定されており、このころのC言語の書き方をK&Rスタイル と呼ぶことがある。今では古い書き方である。

ANSI C, ISO C

その後、C言語の文法は委員会が設置されて検討され、 1989年にANSI (American National Standards Institute)で、 ANSI X3.159-1989という規格として制定された。 このとき文法は大きく変更され、特に関数の宣言の仕方が 変わった(互換性のため古い書き方も可能になっている)。 ちなみにANSIは日本で言うJISのようなもの。

この規格はのちに、ISO (International Organization For Standardization) でISO/IEC 9899:1990として採用された。

C99

ISOで1999年に定められた規格。正式名称は ISO/IEC 9899:1999。 変数の宣言が先頭でなくてもよくなったり、//コメントが使えるようになったり、 様々な新機能が導入された。多くのCコンパイラはC99に準拠するようになったが、 新機能はまだそれほど活用されていない(気がする)。

C言語の処理系(コンパイラ)

Windowsでは、MicrosoftのVisual C++が広く使われている。 C++という名前だが、CとC++両方が使える。 UNIXでは、R. Stallman (ストールマン)の GNUプロジェクト で作られたGNU cc (gcc)が広く使われている。 これもCとC++両方に対応した処理系である。 また、最近ではappleが中心になって開発したclangもよく使われるように なってきた。 本講義では、gccを用いる。
C言語とは