Menu
Coddy logo textTech

Pointer auf Structs

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

Beim Arbeiten mit Strukturen können Sie Zeiger auf diese erstellen, genau wie bei anderen Typen. Dies ist nützlich, um große Strukturen effizient zu übergeben.

Definiere eine Person-Struktur und erstelle einen Zeiger darauf:

type Person struct {
    name string
    age  int
}

func main() {
    person := Person{name: "Alice", age: 30}
    
    // Erstelle einen Zeiger auf die Struktur
    personPtr := &person
    
    // Zugriff auf Felder über den Zeiger
    fmt.Println(personPtr.name)
    fmt.Println(personPtr.age)
}

Die Ausgabe zeigt, dass wir über den Zeiger auf Felder zugreifen können:

Alice
30

Sie können Felder auch über den Zeiger ändern:

personPtr.age = 31
fmt.Println(person.age)  // Gibt aus: 31
challenge icon

Aufgabe

Anfänger

In dieser Herausforderung übst du den Umgang mit Zeigern auf Strukturen in Go. Du hast eine Person-Struktur mit den Feldern name und age. Deine Aufgabe besteht darin, die Informationen der Person mithilfe eines Zeigers auf die Struktur zu aktualisieren.

Der Code erstellt bereits eine Person-Struktur und einen Zeiger darauf. Du musst die Informationen der Person über den Zeiger ändern.

Probier es selbst

package main

import "fmt"

// Person-Struktur mit den Feldern Name und Alter
type Person struct {
	name string
	age  int
}

func main() {
	// Erstelle eine Person-Struktur
	person := Person{
		name: "John",
		age:  25,
	}

	// Erstelle einen Zeiger auf die Person-Struktur
	personPtr := &person

	// Gib die ursprünglichen Informationen der Person aus
	fmt.Println("Original person:")
	fmt.Printf("Name: %s, Age: %d\n", person.name, person.age)

	// TODO: Verwende den Zeiger, um den Namen der Person in "Jane" und das Alter in 30 zu ändern
	// Hinweis: Du kannst auf Strukturfelder über einen Zeiger mit der Punktnotation zugreifen
	

	// Gib die aktualisierten Informationen der Person aus
	fmt.Println("Updated person:")
	fmt.Printf("Name: %s, Age: %d\n", person.name, person.age)
}
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

Übe selbstständig: Online-Go-Compiler