1. 普通类型,变量存的就是值,也叫值类型
2. 获取变量的地址,用&,比如: var a int, 获取a的地址:&a
3. 指针类型,变量存的是一个地址,这个地址存的才是值
4. 获取指针类型所指向的值,使用:*,比如:var *p int, 使用*p获取p指向的值
// 写一个程序, 获取一个变量的地址,并打印到终端package mainimport "fmt"func main(){ var s int = 10 fmt.Println(&s)}
// 写一个函数, 传入一个int类型的指针, 并在函数中修改所指向的值.// 在main函数中调用这个函数, 并把修改前后的值打印到终端, 观察结果.package mainimport "fmt"func text(p *int){ fmt.Println(p) // 打印的是地址 *p = 999}func main(){ var a int = 10 var p *int p = &a fmt.Println(*p) *p = 100 fmt.Println(a) text(&a) fmt.Println(a) // a 变成了 999}