Go: panic: runtime error: invalid memory address or nil pointer dereference
Goのnilポインタ参照エラーの解決方法
概要
nilポインタを参照しようとした際に発生するランタイムパニックです。
エラーメッセージ
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x...]
原因
- 初期化されていないポインタ: 変数がnilのまま使用
- マップの未初期化: makeなしでマップにアクセス
- インターフェースのnil: nilインターフェースのメソッド呼び出し
解決策
1. nilチェック
| |
2. マップの初期化
| |
3. ポインタの初期化
| |
よくある間違い
- 関数がnilを返す可能性を考慮しない
- JSONデコード後のnilチェック忘れ
Go の他のエラー
この記事は役に立ちましたか?