Sobes.tech
Junior — Middle

Wie erfolgt die Übergabe von Argumenten in Funktionen in der Programmiersprache Go?

sobes.tech KI

Antwort von AI

In der Programmiersprache Go werden Argumente in Funktionen per Wert übergeben. Das bedeutet, dass beim Aufruf einer Funktion Kopien der Argumentwerte übergeben werden, und Änderungen innerhalb der Funktion die Originalvariablen nicht beeinflussen.

Wenn eine Variable vom aufrufenden Code aus geändert werden soll, wird ein Zeiger auf diese Variable übergeben. Die Funktion erhält dann die Adresse und kann den Wert an dieser Adresse ändern.

Beispiel für Übergabe per Wert und per Zeiger:

package main
import "fmt"

func incrementByValue(x int) {
    x = x + 1
}

func incrementByPointer(x *int) {
    *x = *x + 1
}

func main() {
    a := 5
    incrementByValue(a)
    fmt.Println(a) // Gibt 5 aus, da per Wert übergeben

    incrementByPointer(&a)
    fmt.Println(a) // Gibt 6 aus, da per Zeiger übergeben
}