Heim > Backend-Entwicklung > Golang > Wie kann ich einem Integer-Zeiger in Go sicher einen Integer-Wert zuweisen?

Wie kann ich einem Integer-Zeiger in Go sicher einen Integer-Wert zuweisen?

Barbara Streisand
Freigeben: 2024-12-01 07:57:11
Original
948 Leute haben es durchsucht

How to Safely Assign an Integer Value to an Integer Pointer in Go?

Einen Int-Zeiger auf einen Int-Wert in Go setzen

Wenn Sie versuchen, einer Zeigervariablen einen Wert zuzuweisen, ist es wichtig, sicherzustellen, dass Zeiger ist nicht Null. Der Versuch, einen Nullzeiger zu dereferenzieren, kann, wie Sie es erlebt haben, zu einer Laufzeitpanik führen.

Lösung:

Um den Zeigerwert festzulegen, muss der Zeiger auf etwas Gültiges zeigen . Mit der Funktion new() können Sie einen Zeiger auf ein int mit dem Wert Null erhalten:

guess := new(int)
*guess = 12345
Nach dem Login kopieren
Nach dem Login kopieren

Dadurch wird Speicher für die int-Variable reserviert und der Zeiger so eingestellt, dass er auf diesen Speicher zeigt. Jetzt können Sie den angezeigten Wert über den Zeiger ändern.

Vereinfachte Deklaration:

Sie können die Deklaration und Initialisierung mithilfe einer kurzen Variablendeklaration vereinfachen:

guess := new(int)
*guess = 12345
Nach dem Login kopieren
Nach dem Login kopieren

Alternative Vorgehensweise:

Sie können auch die Adresse eines bestehenden zuweisen Variable zum Zeiger:

value := 12345
guess := &value
Nach dem Login kopieren

Dies ändert den Zeigerwert, nicht den Zeigerwert. In diesem einfachen Beispiel ist der Effekt jedoch ähnlich.

Änderung des Spitzenwerts:

Eine Änderung des Spitzenwerts durch den Zeiger ändert auch den Wert der Variablen es weist darauf hin. Umgekehrt wirkt sich das Ändern des Werts der Variablen auf den Zeigerwert aus:

var value int
guess := &value
value = 12345
fmt.Println(*guess)
// Prints: 12345
Nach dem Login kopieren

Die Verwendung eines Zeigers bietet eine bequeme Möglichkeit, den Wert einer Variablen indirekt zu ändern. Es ist jedoch wichtig, den Zeiger richtig zu initialisieren, um Nullzeigerfehler zu vermeiden und die Datenintegrität sicherzustellen.

Das obige ist der detaillierte Inhalt vonWie kann ich einem Integer-Zeiger in Go sicher einen Integer-Wert zuweisen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage