一、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

京公网安备 11010502036488号