本篇文章是通过学习[https://www.liwenzhou.com]所写,用于个人学习,资料整理,如有侵权请联系删除。
指针
任何程序数据载入内存后,在内部都有他们的地址,这就是指针。为了保存一个数据在内存中的地址,我们就需要指针变量。需要注意的是,变量值所在内存地址的值不等于该内存地址存储的变量值。
Go语言中的指针不能进行偏移和运算,因此Go语言中的指针操作非常简单,我们只需要记住两个符号:&
取地址、*
根据地址取值
指针地址和指针类型
每个变量在运行时都拥有一个地址,这个地址代表变量在内存中的位置。Go语言中使用&
字符放在变量前面对变量进行取地址操作。Go语言中的值类型都有对应的指针类型,如*int
*int64
*string
等。
去变量指针的语法如下:
ptr := &v
//v代表被取地址的变量,类型为T
//ptr用于接收地址的变量,ptr的类型就是*T
指针取值
在对普通变量使用&操作符取地址后会获得这个变量的指针,然后就可以对指针使用*操作,也就是指针取值。