Golang中的新奇的语法:指针部分图解
代码部分
package main
import "fmt"
//func swap(a int, b int) {
// var t int = a
// a = b
// b = t
//}
func swap(pa *int, pb *int) {
var t int = *pa //t = main::a
*pa = *pb //main::a = main::b
*pb = t //main::b = t
}
func main() {
var a int = 10
var b int = 20
swap(&a, &b)
fmt.Println("a = ", a, "b = ", b)
var p *int
p = &a //传地址
fmt.Println(&a)
fmt.Println(p)
var pp **int //二级指针,存一级指针的地址
pp = &p
fmt.Println(&p)
fmt.Println(pp)
}