go语言中指针的三个重要点:指针类型,指针地址,指针取值
go语言中函数的传参都是通过值传递,如果要在改变某个变量,可以通过指向该变量的指针传递。 &(变量的指针地址), *(通过指针取变量的值)
值传递
var name = "撸铁怪"
func this(name string) {
name = "村花"
}
this(name)
fmt.Println(name) #撸铁怪
指针地址传递
var name = "张全蛋"
func this (name *string){
*name = "王二狗"
}
this(name)
fmt,Println(&name) #王二狗
空指针
当一个指针被定义之后没有赋值,它的值为nil
对引用类型必须给它分配内存空间,才能取指针