Aller langue tableau de pointeurs
Nous comprenons le tableau de pointeurs il y a, regarde l'exemple, définit la longueur d'un tableau entier de 3:
package main import "fmt" const MAX int = 3 func main() { a := []int{10,100,200} var i int for i = 0; i < MAX; i++ { fmt.Printf("a[%d] = %d\n", i, a[i] ) } }
La sortie est le code ci-dessus est exécuté:
a[0] = 10 a[1] = 100 a[2] = 200
Dans un cas, nous pourrions enregistrer le tableau, nous avons donc besoin d'utiliser des pointeurs.
Le suivant déclare un tableau entier de pointeurs:
var ptr [MAX]*int;
ptr est un pointeur vers un tableau d'entiers. Par conséquent, chaque élément pointant vers une valeur. Les exemples suivants de trois entiers seront stockés dans le tableau de pointeurs:
package main import "fmt" const MAX int = 3 func main() { a := []int{10,100,200} var i int var ptr [MAX]*int; for i = 0; i < MAX; i++ { ptr[i] = &a[i] /* 整数地址赋值给指针数组 */ } for i = 0; i < MAX; i++ { fmt.Printf("a[%d] = %d\n", i,*ptr[i] ) } }
La sortie est le code ci-dessus est exécuté:
a[0] = 10 a[1] = 100 a[2] = 200