C言語なら俺に聞け(入門篇) Part 7
■ このスレッドは過去ログ倉庫に格納されています
0220デフォルトの名無しさん
2007/02/05(月) 21:14:47そのポインタが実際に有効であるかどうかということ
たとえばプログラムがメモリ100番地から200番地の領域を確保したとします
ポインタはメモリの先頭番地をさすので通常なら100になっているわけです
仮に0だったなら 0番地にはメモリ領域を確保できないので実質「確保されたメモリはない」ということが分かります
ところがポインタが300番地をさしていたらどうでしょう?
if( p != NULL) や if(p) としては0で無い以上メモリアドレスを指定していることになりますが
実際には確保されていないアドレス(有効ではないアドレス)ということになります
>>216がおっしゃっているのはこのことです
if( p != NULL) などのコードではポインタが実際に有効か無効であるかは調べようが無いんです
■ このスレッドは過去ログ倉庫に格納されています