一个指针变量可以指向任何一个值的内存地址 它指向那个值的内存地址,在 32 位机器上占用 4 个字节,在 64 位机器上占用 8 个字节,并且与它所指向的值的大小无关
    Go 语言的取地址符是 &
    指针的格式化标识符为 %p
    当一个指针被定义后没有分配到任何变量时,它的值为 nil

    1. package main
    2. import "fmt"
    3. func main() {
    4. var i1 = 5
    5. fmt.Printf("an integer: %d, its location in memory: %p\n", i1, &i1)
    6. //an integer: 5, its location in memory: 0xc0000aa058
    7. var intP *int
    8. intP = &i1
    9. fmt.Printf("The value at memory location %p is %d\n", intP, *intP)
    10. //The value at memory location 0xc0000aa058 is 5
    11. }