一架梯子,一头程序猿,仰望星空!

go语言指针


go语言支持指针操作,但是跟c/c++的指针不一样,在go语言中我们不需要维护内存,go语言的指针更像引用类型。

1.定义指针类型

语法:

*类型

通过在类型前面增加 * 星号定义指针类型。

例子:

// 定义int类型指针变量p
var p *int

2.获取指针地址

通过 & 运算符获取变量指针。

// 初始化并且定义变量i
i := 42

// 将i变量的地址,赋值给p变量, 这个时候指针p指向变量i
p = &i

3.引用指针的内容

通过 * 星号引用指针的内容

// 打印指针p,指向的值,这里输出42
fmt.Println(*p)

// 将100 赋值给指针p指向的存储空间,相当于赋值给变量i
*p = 100

提示:go语言中指针,更像其他语言的引用类型,大家可以当成引用类型使用。