Files
2026-03-14 19:03:12 +08:00
..
2026-03-14 19:03:12 +08:00
2026-03-14 19:03:12 +08:00
2026-03-14 19:03:12 +08:00

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 验证答案。