nil 指针
本课属于 Coddy GO 学习旅程的“基础知识”单元。第 65 课,共 109 课。
nil 指针是一个不指向任何内容的指针。它是指针类型的零值。
声明一个 nil 指针:
var ptr *int
fmt.Println(ptr)
fmt.Println(ptr == nil)输出显示指针为 nil:
<nil>
true尝试解引用 nil 指针会导致程序崩溃:
var ptr *int
// 这会导致你的程序崩溃。
// fmt.Println(*ptr)解引用指针前,始终检查它是否为 nil:
if ptr != nil {
fmt.Println(*ptr)
}挑战
入门在这个挑战中,你将学习 Go 中的 nil 指针。nil 指针是不指向任何内存地址的指针。
你的任务是检查指针是否为 nil,并打印相应的消息。
代码中已经有一个设为 nil 的指针变量。你需要添加代码来检查指针是否为 nil,并相应地打印消息。
亲手试试
package main
import "fmt"
func main() {
// 这是一个指向整数的 nil 指针
var ptr *int
// TODO: 检查 ptr 是否为 nil
// 如果它为 nil,就打印 "The pointer is nil"
// 如果它不为 nil,就打印 "The pointer is not nil"
fmt.Println("Program completed")
}这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: Go 在线编译器