Latest web development tutorials

Go Sprache Zeiger als Funktionsparameter

gehen Zeiger gehen Zeiger

Go Sprache ermöglicht einen Zeiger auf eine Funktion zu übergeben, muss Chi zu den Funktionszeigertyp definierten Parameter eingestellt werden.

Das folgende Beispiel zeigt, wie ein Zeiger auf eine Funktion, zu passieren und die Werte in der Funktion nach dem Funktionsaufruf zu ändern:

package main

import "fmt"

func main() {
   /* 定义局部变量 */
   var a int = 100
   var b int= 200

   fmt.Printf("交换前 a 的值 : %d\n", a )
   fmt.Printf("交换前 b 的值 : %d\n", b )

   /* 调用函数用于交换值
   * &a 指向 a 变量的地址
   * &b 指向 b 变量的地址
   */
   swap(&a, &b);

   fmt.Printf("交换后 a 的值 : %d\n", a )
   fmt.Printf("交换后 b 的值 : %d\n", b )
}

func swap(x *int, y *int) {
   var temp int
   temp = *x    /* 保存 x 地址的值 */
   *x = *y      /* 将 y 赋值给 x */
   *y = temp    /* 将 temp 赋值给 y */
}

Die obigen Beispiele können die Ausgabeergebnisse:

交换前 a 的值 : 100
交换前 b 的值 : 200
交换后 a 的值 : 200
交换后 b 的值 : 100

gehen Zeiger gehen Zeiger