はじめての C

(続き)

初期の C の 実装では、すべての ポインタが 同じ表記法 - representation - を もっていました。

通常、この表記法だと、integer 型の int か long の 1つと 同じサイズに なります。

ですので、10進法定数 - decimal constant - の 0 または 0L の いずれかが、うまいぐあいに、どの型に ついても、 null ポインタのように 振舞います。

2つの 定数のうちの 1つを NULL で 定義すれば、任意のポインタ - arbitrary pointer - に 対して 割り当てることが できます。

このマクロは、特に、引数表記 - argument expression - として 役立ちます。

注意してほしいのは、この表記法が、いくつかの ポインタの 型を もつ、null ポインタ定数だと いうことです。(p220)