初級 › Segmentation fault(NULLポインタの参照) › パターン2
Segmentation fault(NULLポインタの参照)
NULL(何も指していないポインタ)の指す先を読み書きしようとしたときに発生するクラッシュです。
1 #include <stdio.h> 2 #include <stdlib.h> 3 4 int main(void) { 5 int value = 7; 6 int *p = ______; ^ 7 *p = value; 8 printf("%d\n", *p); 9 return 0; 10 }
Segmentation fault
空欄を埋めてコンパイル・実行を通す
pがNULLのまま*p = valueで書き込もうとすると、読み込みと同様にクラッシュします。有効な変数のアドレス(&value)を指すようにする必要があります。
次の問題