C言語
パラダイム手続き型
設計者デニス・リッチー
開発者ベル研究所
型付け弱い静的型付け
主な処理系GCC、MSVC
影響を受けた言語B言語、ALGOL、
アセンブリ言語、Pascal
影響を与えた言語awk、csh、C++、Objective-C、
D言語、Java、JavaScript
表・話・編・歴
プログラミング言語>>他のプログラミング言語
C言語(しーげんご)は、1972年にAT&Tベル研究所のデニス・リッチー (Dennis M. Ritchie) が主体となって作ったプログラミング言語である。英語圏では単に Cと呼称されており、日本でも著作によっては C と記述される。
UNIXの移植性を高めるために開発された経緯から、オペレーティングシステムカーネル向けの低レベルな記述ができることを特徴としており、移植用アセンブラと呼ばれることもある。
目次
1 特徴
1.1 自由度
1.2 アセンブラとのインターフェース
1.3 コンパイラ仕様
1.4 処理系の簡素化
1.5 その他
1.6 コード例
1.7 主な制御構造
1.8 主な標準ライブラリ関数
2 歴史
2.1 誕生
2.2 UNIX環境とC
2.3 パソコンの歴史とC
2.4 現在のC
3 Cの規格
3.1 K&R
3.2 C89
3.3 C95
3.4 C99
3.5 MISRA-C
4 主なC処理系
4.1 x86系のみ対応するもの
4.2 x86系以外に対応するもの
5 関連するプログラミング言語
5.1 先祖
5.2 拡張
5.3 関連
5.4 後継
6 その他
7 参考文献
8 外部リンク
//
Cは手続き型言語であり、コンパイラ言語として設計された。Cは、自由度、実行速度、コンパイル速度などを追求したが、代わりにコンパイル後のコードの安全性を犠牲にもしているので、コンピュータ寄りの言語仕様になっている。
アマチュアからプロのエンジニアまで、非常にプログラマ人口が多い。Cは正負の両面含めてコンピュータの世界に大きな影響を及ぼしているが、最大の原因はそのプログラマ人口の多さであると言われている。
パソコンはもちろんのこと、組込み用マイコンから大型コンピュータまで、Cを使用できるプラットホームが多様である。また、仕様規格・派生言語も多い。
採用されているソフトウェア分野が広い。極論すれば、Cの採用が最適である分野は一つもなく各々の分野に特化した言語に劣ると言える。しかし、あらゆる分野に対してある程度の言語適性があり現実的な選択肢としてよく用いられる。発祥の地であるUNIXの場合、大抵のことがスクリプト言語・マクロプロセッサやフィルタで処理できるため、Cを使うのはある意味最後の手段であって、うまく分野の棲み分けができていた面があるのだが、幅広い領域に移植された結果、適切でない分野にCが使われている場面もある。
低水準な記述が出来る高級言語とも、高級言語の顔をした低級言語とも言われる。また、コーディング上の“自由度”が非常に高い。