Go 学习笔记 07 | 指针详解

一、Golang 中的指针

指针存储的是另一个变量的内存地址。

通过指针修改值会影响到原来的值。

package main

import (
	"fmt"
)

func main() {
	a := 10
	p := &a
	fmt.Println(p)
	fmt.Println(*p)

	*p = 30

	fmt.Println(a)
}

输出:

0xc000012080
10
30

如何去改变一个指针对应的地址的值:

package main

import (
	"fmt"
)

func fn1(x int) {
	x = 10
}

func fn2(x *int) {
	*x = 40
}

func main() {
	var a = 10
	fn1(a)
	fmt.Println(a)
	fn2(&a)
	fmt.Println(a)
}

输出:

10
40

二、参考教程

Golang 教程 P30

posted @ 2020-11-22 13:12  Wonz  阅读(90)  评论(0编辑  收藏  举报