01-pointers - 指针基础
知识点讲解
指针声明
var p *int // 声明一个int类型的指针
x := 10
p = &x // p是x的地址
指针操作
x := 10
p := &x // 取地址
fmt.Println(*p) // 解引用,输出10
*p = 20 // 通过指针修改值
fmt.Println(x) // 输出20
指针与函数
function modifyValue(p *int) {
*p = 100 // 修改指针指向的值
}
x := 10
modifyValue(&x) // 传递地址
fmt.Println(x) // 输出100
零值
var p *int // nil指针
fmt.Println(p == nil) // true
重要提示
- Go中有指针但没有指针运算
- 指针可以用于共享数据、避免拷贝
- 指针的零值是nil
- 解引用nil指针会panic
学习目标
完成本练习后,你将:
- ✅ 掌握指针的声明和创建
- ✅ 学会取地址和解引用操作
- ✅ 理解指针与函数参数的关系
- ✅ 了解nil指针的概念
练习说明
打开 main.go,根据注释提示填充代码,完成后运行 go test -v 验证答案。