指针
Go 语言中指针是很容易学习的,Go 语言中使用指针可以更简单的执行一些任务。
import "fmt"
func main() {
var a int = 5
fmt.Printf("变量a的内存地址是:%x\n",&a)
}
运行结果如下:
什么是指针
一个指针变量指向了一个值的内存地址。
类似于变量和常量,在使用指针前你需要声明指针。指针声明格式如下:
var var_name *var-type
var-type 为指针类型,var_name 为指针变量名,* 号用于指定变量是作为一个指针。以下是有效的指针声明:
var ip *int /* 指向整型*/
var fp *float32 /* 指向浮点型 */
如何使用指针
指针使用流程:
- 定义指针变量。
- 为指针变量赋值。
- 访问指针变量中指向地址的值。
在指针类型前面加上 * 号(前缀)来获取指针所指向的内容。
func main() {
var a int = 5 /*声明实际变量*/
var pt *int = &a /*声明指针变量指向a的内存地址*/
*pt = 666 /*改变指针指向的内存地址的值*/
fmt.Println(a)
}
运行结果如下:
参数传递
go语言只有值传递一种方式