elchikaタグ百科

C言語

プログラミング言語のひとつ。他の言語よりも長い歴史を持ち、現在も人気がある言語である。他の言語の基礎となる部分が多く、C言語から派生した言語も多数存在する。

概要

C言語とはコンパイルを必要とするコンパイラ言語で、処理速度が最速クラスのプログラミング言語。

他のプログラミング言語よりも歴史が長く現在も人気があるのが特徴である。

C言語はコンピュータの言語に近い言語なので、コンピュータの根本的な動作を理解したい人にはC言語の習得がおすすめ。

特徴

C言語は手続き型プログラミング言語でありつつも、同時にifやforなどの制御構造を持ち、「構造化プログラミング」ができるのが特徴。

この形はC言語の影響でスタンダードになり、現代の多くのプログラミング言語がこの形を採用している。

記述方法の自由度が高く低級言語との相性も良いので、記述の中でアセンブリ言語を使うこともできる。これをインラインアセンブラと呼ぶ。

また、C言語のコンパイラやエディタは数多く提供されているため、開発環境を整えやすいのも特徴である。

作れるもの

C言語は基本的にどんなものでも作れるが、ハードウェアに密着したコーディングが得意な言語である。

特に組み込み系には必須で、ソフトウェアやOSをつくる場合にも向いている。

しかしGUI(グラフィカルユーザーインターフェース)には不向きである。GUIを作るならC++C#がおすすめ。

また、ハードウェアの言語に近いのに他のCPUへの移植性が高く、かつコンパクトに書けるためマイコンボードとも相性がよい。

歴史

1972年、当時使われていたB言語に代わる言語として、AT&Tベル研究所のブライアン・カーニハンとデニス・リッチーによって開発された言語である。

他のプログラミング言語に比べて歴史が長く、昔から存在する言語であるにも関わらず現在も人気がある。

資格

C言語の能力を示す資格として、「C言語プログラミング能力検定試験」という試験がある。

この試験は1級・2級・3級に分かれており、2級と3級はマークシート方式、1級はパソコンを使った実技試験となっている。

他の言語との関連性

C言語は比較的習得の難易度は高いが、他のプログラミング言語の基礎となっている部分が多いので、C言語を習得してから他の言語を学ぶと理解が早い。

C言語が影響を与えた言語として、以下のものが挙げられる。

参考