初級 › invalid memory address or nil pointer dereference の原因と直し方 › パターン1
invalid memory address or nil pointer dereference の原因と直し方
値が代入されていないnilのポインタや構造体のフィールドにアクセスすると、実行時にパニックが発生します。
1 package main 2 3 import "fmt" 4 5 type Point struct{ X, Y int } 6 7 func main() { 8 _______________________ ^ 9 fmt.Println(p.X) 10 }
panic: runtime error: invalid memory address or nil pointer dereference
空欄を埋めて実行を通す
var p *Pointはnilのポインタを宣言するだけで、実体を作りません。&Point{...}でアドレスを取得する形で初期化する必要があります。
次の問題