无涯教程-Go - 指针指向指针函数

45 阅读1分钟

指向指针的指针是指针链的一种形式,通常,指针包含变量的地址,当我们定义一个指向指针的指针时,第一个指针包含第二个指针的地址,该地址指向包含实际值的位置。这是通过在其名称前面放置一个额外的星号来完成的。如以下语句声明一个指向int类型的指针-

var ptr **int;

当指向指针目标值时,访问该值需要两次星号运算符,如以下示例所示-

package main

import "fmt"

func main() { var a int var ptr *int var pptr **int

a=3000

/* 取var的地址 */ ptr=&a

/* 使用运算符 & 的地址获取 ptr 的地址 */ pptr=&ptr

/* take the value using pptr */ fmt.Printf("Value of a=%d\n", a ) fmt.Printf("Value available at ptr=%d\n", ptr ) fmt.Printf("Value available at pptr=%d\n", pptr) }

编译并执行上述代码后,将产生以下输出-

Value of var=3000
Value available at *ptr=3000
Value available at **pptr=3000

参考链接

www.learnfk.com/go/go-point…