使用指针可实现,因为修改的是内存地址,每一个内存地址对应一个值
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
使用指针可实现,因为修改的是内存地址,每一个内存地址对应一个值
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