前言
区别于C/C++中的指针,Go语言中的指针不能进行偏移和运算,是安全指针。
什么是指针

不管是Python还是Go程序 执行过程中数据载入内存后,在计算机内存中都有它们的内地址,这就是指针。
指针的作用就是保存某1个数据在内存中的内存地址,方便我们在内存中快速查找到该数据(变量)。
在Go语言中的值类型(int、float、bool、string、array、struct)都有对应的指针类型,如:*int、*int64、*string等。
指针操作
package main
import "fmt"
func main() {
//基本数据类型在内存中的布局
var i int = 10
//获取变量i的内存地址
fmt.Println("变量i的内存地址:", &i)
//声明1个 ptr指针变量,指向1个类型为int的内存地址
var ptr *int = &i
fmt.Println(ptr)
//获取指针的内存地址
fmt.Println(&ptr)
//通过指针获取变量i对应的值(10)
fmt.Println(*ptr)
//通过指针修改变量i对应的值
*ptr = 222
fmt.Println(i)
//通过指针修改变量的值
name := "成龙"
age := "18"
por1 := &name
*por1 = "JackCheng"
por1 = &age
*por1 = "68"
fmt.Println(name, age)
}
来源:https://www.cnblogs.com/sss4/p/12586637.html