Menu
Coddy logo textTech

Dereferenzieren von Zeigern

Teil des Abschnitts Grundlagen der GO-Journey von Coddy — Lektion 63 von 109.

Dereferenzieren von Zeigern (*) ermöglicht es Ihnen, auf den an einer Speicheradresse gespeicherten Wert zuzugreifen. Dies wird als „Dereferenzieren“ des Zeigers bezeichnet.

Erstellen Sie eine Variable und einen Pointer darauf:

func main() {
    number := 42
    pointer := &number
    
    // Den Pointer dereferenzieren, um den Wert zu erhalten
    value := *pointer
    
    fmt.Println("Pointer:", pointer)
    fmt.Println("Dereferenced value:", value)
}

Die Ausgabe zeigt sowohl den Pointer als auch den Wert, auf den er zeigt:

Pointer: 0xc000018030
Dereferenced value: 42

Das Sternchen (*) vor einer Zeigervariablen greift auf den eigentlichen Wert an dieser Speicheradresse zu.

challenge icon

Aufgabe

Anfänger

In dieser Herausforderung wirst du das Dereferenzieren von Pointern in Go üben. Wir haben eine Variable message mit einem String-Wert und einen Pointer messagePtr, der darauf zeigt.

Deine Aufgabe ist es, den Pointer zu dereferenzieren, um auf den Wert, auf den er zeigt, zuzugreifen und diesen auszugeben.

Spickzettel

Verwenden Sie den Stern-Operator (*), um einen Pointer zu dereferenzieren und auf den Wert an der Speicheradresse zuzugreifen:

number := 42
pointer := &number

// Den Pointer dereferenzieren, um den Wert zu erhalten
value := *pointer

fmt.Println("Pointer:", pointer)           // 0xc000018030
fmt.Println("Dereferenced value:", value)  // 42

Der *-Operator vor einer Pointer-Variablen greift auf den tatsächlichen Wert zu, der an dieser Speicheradresse gespeichert ist.

Probier es selbst

package main

import "fmt"

func main() {
	// Hier ist unsere String-Variable
	message := "Hello, pointers!"
	
	// Dies ist ein Pointer auf unsere message-Variable
	messagePtr := &message
	
	// TODO: Dereferenziere den messagePtr, um den Wert zu erhalten, auf den er zeigt,
	// und speichere ihn in der Variable 'value'
	value := ""
	
	// Die Ergebnisse ausgeben
	fmt.Println("The pointer points to the value:", value)
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen