go_study/bilibili/aceld/pointor/test2/test.go
2024-11-19 12:27:49 +08:00

43 lines
551 B
Go

package main
import "fmt"
func swap(a int, b int) (int, int) {
var tmp int
tmp = a
a = b
b = tmp
return a, b
}
func swap2(pa *int, pb *int) {
var temp int
temp = *pa // temp = main::a
*pa = *pb // main::a = main::b
*pb = temp // main::b = temp
}
func main() {
var a int = 10
var b int = 20
fmt.Println("a = ", a, " b = ", b)
swap2(&a, &b)
// a, b = 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)
fmt.Println(&pp)
}