C & C++ FAQ
目次
C
C++
空ポインタ定数とは何ですか。
誤解を受けやすいのですが、空ポインタ定数は、『ポインタ
ではない
』/あるいは『ポインタ
とは限らない
』ものです。
C
値
0
をもつ汎整数定数、またはその定数式を型
void *
にキャストした式のことをいいます。
C++
値
0
をもつ整数型をもつ汎整数定数式のことをいいます(すなわち、ポインタではありません)。
■ 根拠 ■
標準C
§6.2.2.3
Pointers
標準C
99
§6.3.2.3
Pointers
標準C++
§4.10
Pointer Conversions
戻る