使用指针可实现,因为修改的是内存地址,每一个内存地址对应一个值

package main

import "fmt"

func a(x int) {
	x = 100
}

func b(y *int) {
	*y = 200
}

var z = 1

func c() {
	b(&z)
	a(z)
}
func main() {
	c()
	fmt.Println(z)
}

运行结果:200
z由1变成了200