5.1: そもそもこの悪名高いヌルポインターとは何か。 A: C言語の定義によればどんなポインターの型にも特別な値、すなわち 「ヌルポインター」が存在する。このヌルポインターは他のどんなポ インターの値とも区別可能で、「いかなるオブジェクトや関数へのポ インターと比較しても等しくなることがないことを保証されている」。 すなわちアドレス演算子&を適用した結果がヌルポインターとなるこ ともない。またmallocの呼び出しに成功した場合の戻り値がヌルポイ ンターの場合もない(mallocは領域確保に失敗した場合にヌルポイン ターを返す。これがヌルポインターの典型的な使い方である。その値 によりアドレス以外の意味をあらわす特別なポインターの値で、たと えば「領域確保の失敗」とか、まだ「何も指していない」のような意 味を持つ)。 ヌルポインターは、初期化されていないポインターと考え方で異なる。 ヌル