K&R版Cとは? 「C」を“革新的プログラミング言語”にした立役者いまさら聞けない「C」の歴史【第2回】

プログラミング言語「C」の登場初期に、その革新性を広く知らしめるきっかけになったのが「K&R版C」の存在だ。K&R版Cとは何なのか。そもそも「K」と「R」とは。

2022年09月29日 08時15分 公開
[Twain TaylorTechTarget]

 通信技術の研究開発を手掛けるベル研究所(Bell Laboratories)は1973年に、プログラミング言語「C」を開発した。Cのコンパイラ(ソースコードを実行可能ファイルに変換するプログラム)は、ベル研究所内のさまざまなプログラムを実装できるほど強力だった。Cで記述されたOS「UNIX」は、研究指向の学術機関や政府機関が使用するようになった。

革新的だった「K&R版C」

 1978年、コンピュータ研究者のデニス・リッチー氏とブライアン・カーニハン氏は書籍『The C Programming Language』(プログラミング言語C)を出版した。この書籍はCの基準が整うまで、一般的な規約としての役割を果たした。The C Programming Languageには、カーニハン氏とリッチー氏の名を冠した「K&R」という略称がある。K&Rを標準としたバージョンのCは「K&R版C」とも呼ばれる。

 K&R版Cは、次の革新的な機能を盛り込んだ。

  • 標準入出力を使うためのライブラリ(プログラム部品群)
  • データの種類ごとに規約を定めたデータ型の「unsigned」と「long int」
    • unsignedは、符号なしの整数を扱うためのデータ型。
    • long intは、整数を扱う「int」よりも大きな整数を扱うためのデータ型。
  • 複合代入演算子
    • 演算子の左側の変数と右側の値を使って計算をした結果を、左側の変数に代入することを指示する演算子。計算として加算を実行する「+=」などがある。
  • 呼び出し元に渡す戻り値を持たない関数
    • この場合、戻り値のデータ型に「void」を指定する。
  • 構造体
    • 異なるデータ型をまとめて扱えるようにしたデータ構造。
  • 列挙型
    • 特定の定数をまとめた集合体。
  • 共用体
    • 同じメモリ領域に異なるデータ型を格納できるデータ型。

 第3回はCの標準化の歴史を整理する。

TechTarget発 先取りITトレンド

米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。

Copyright © ITmedia, Inc. All Rights Reserved.

ITmedia マーケティング新着記事

news055.jpg

トランプ氏当選でイーロン・マスク氏に追い風 過去最高の投稿数達成でXは生き延びるか?
2024年の米大統領選の当日、Xの利用者数が過去最高を記録した。Threadsに流れていたユー...

news104.jpg

トランプ氏圧勝で気になる「TikTok禁止法」の行方
米大統領選で共和党のトランプ前大統領が勝利した。これにより、TikTokの米国での将来は...

news190.jpg

インバウンド消費を左右する在日中国人の影響力
アライドアーキテクツは、独自に構築した在日中国人コミュニティーを対象に、在日中国人...