English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Go-ProgrammierspracheDer Zeiger in der Variable ist eine Variable, die zur Speicherung der Speicheradresse einer anderen Variable verwendet wird. Sie können auch wieVariablewie den Zeiger an die Funktion übergeben. Es gibt zwei Methoden, um die folgenden Operationen auszuführen:
Einen Zeiger erstellen und ihn an die Funktion übergeben
Den Speicheradresse der Variable übergeben
Im folgenden Programm verwenden wir die Funktionptf,diese Funktion hat einen Zeigerparameter vom Typ Integer, der bedeutet, dass die Funktion nur Zeigerparameter akzeptiert. Gleichzeitig ändert diese Funktion die VariablexIn der Anfangszeit,xDer Wert enthält100. Aber nach dem Funktion aufruf wird der Wert geändert zu748,wie die Ausgabe zeigt.
// Das Go-Programm erstellt einen Zeiger //und ihn an die Funktion übergeben package main import \ //Zeiger als Parameter akzeptieren func ptf(a *int) { //Verweis *a = 748 } func main() { //Normaler Variable var x = 100 fmt.Printf("Der Wert von x vor dem Funktion aufruf ist: \t%d\n", x) //Einen Zeigervariable erhalten //und Adresse zuweisen var pa *int = &x //Funktion auf diese Weise aufrufen //Zeiger an die Funktion übergeben ptf(pa) fmt.Printf("Der Wert von x nach der Funktion aufruf ist: \t%d\n", x) }
Ausgabe:
Der Wert von x vor dem Funktion aufruf ist: 100 Der Wert von x nach der Funktion aufruf ist: 748
Beachten Sie das folgende Programm, wir haben keinen Zeiger erstellt, um die Variable zu speichernxdie Adresse, d.h. den Zeiger in dem obigen Programmpa。Wir geben direktxDie Adresse wird an die Funktion übergeben, der Aufruf der Funktion ähnelt dem obigen Verfahren.
package main import \ // int-Typ Zeiger als Parameter func ptf(a *int) { *a = 748 } func main() { var x = 100 fmt.Printf("Der Wert von x vor dem Funktion aufruf ist: \t%d\n", x) //durch Aufruf der Funktion //Adresse übergeben //Variable x ptf(&x) fmt.Printf("Der Wert von x nach der Funktion aufruf ist: \t%d\n", x) }
Ausgabe:
Der Wert von x vor dem Funktion aufruf ist: 100 Der Wert von x nach der Funktion aufruf ist: 748
Beachten Sie:Sie können auch den kurzen Deklarationsoperator (:=) verwenden, um in dem obigen Programm Variablen und Zeiger zu deklarieren.