Skip to Content
21st Century C, 2nd Edition
book

21st Century C, 2nd Edition

by Ben Klemens
May 2025
Intermediate to advanced
408 pages
5h 55m
Japanese
O'Reilly Media, Inc.
Content preview from 21st Century C, 2nd Edition

用語集

アライメント

データ要素がメモリ内の特定の境界から始まるという要件。例えば、8ビットのアライメント要件がある場合、1ビットのchar に続いて8ビットのint を保持する構造体では、 char後に7ビットのパディングが必要になり、 int が8ビット境界から始まるようになる。

アスキー

情報交換のためのアメリカ標準コード。ナイーブな英語の文字セットから0~127の数字への標準マッピング。ヒント:多くのシステムでは、man ascii 、コードの表が表示される。

自動割り当て

自動的に割り当てられる変数の場合、メモリ上のスペースは変数が宣言された時点でシステムによって割り当てられ、与えられたスコープの終了時に削除される。

オートツール

Autoconf、Automake、Libtoolなど、あらゆるシステムでの自動コンパイルを簡単にするGNUのプログラミングセット。

ベンフォードの法則

様々なデータセットの先頭桁は、対数のような分布を持つ傾向がある:1の頻度は約30%、2は約17.5%、...9は約4.5%である。

ブール

真/偽。1800年代前半から半ばにかけて活躍したイギリスの数学者、ジョージ・ブールにちなんで名付けられた。

ビーエスディー

バークレーソフトウェアディストリビューション。POSIXの実装。

コールバック関数

別の関数(B)に入力として送られる関数(A)のことで、関数Bはその演算の過程で関数Aを呼び出すことができる。例えば、一般化ソート関数は通常、2つの要素を比較する関数を入力とする。

コールグラフ

どの関数が他の関数の呼び出しを行い、また呼び出されるかを示す箱矢視図。

セトロジー

クジラの研究である。

コンパイラ

正式には、プログラムの(人間が読める)テキストを(人間が読めない)マシン命令に変換するプログラミング。プリプロセッサ+コンパイラ+リンカを指すことが多い。

デバッガ

コンパイルされたプログラムを対話的に実行するためのプログラミングで、ユーザはプログラムを一時停止したり、変数の値をチェックしたり、変更したりすることができる。バグを理解するのに役立つことが多い。

ディープコピー

ポインターを含む構造体のコピーで、すべてのポインターに従い、ポインターを指すデータのコピーを作成する。

エンコーディング

人間の言語で書かれた文字を、コンピュータが処理するために数値コードに変換する手段。ASCIIマルチバイトエンコーディングワイド文字エンコーディングも参照のこと。

環境変数

プログラムの環境変数で、親プログラム(通常はシェル)によってセットされる。

外部ポインタ

不透明ポインターを参照のこと。

浮動小数点

のような科学的記数法に似た数値表現。 2.3×10^4指数部(この例では4)と仮数部(ここでは2.3)を持つ。仮数を書き出した後、小数点が正しい位置に浮くように指数を考える。

フレーム

関数の情報(入力や自動変数など)が格納されるスタック内のスペース。

ジーデービー

GNUデバッガ。

グローバル

変数のスコープがプログラミング全体に及ぶ場合、その変数はグローバルである。C言語にはグローバル・スコープは存在しないが、プログラム中のすべてのコード・ファイルに含まれることが合理的に期待できる変数がヘッダにある場合、その変数をグローバル変数と呼ぶのは妥当である。

グリフ

筆談に使われる記号。

グヌー

GnuはUnixではない。

GSL ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Learn C Programming - Second Edition

Learn C Programming - Second Edition

Jeff Szuhay
Tiny C Projects

Tiny C Projects

Daniel Gookin

Publisher Resources

ISBN: 9798341650848