Heim >Backend-Entwicklung >Golang >Wie hänge ich mehrere Byte-Slices in Go mithilfe von „append' korrekt an?

Wie hänge ich mehrere Byte-Slices in Go mithilfe von „append' korrekt an?

Linda Hamilton
Linda HamiltonOriginal
2024-12-15 20:35:11867Durchsuche

How Do I Correctly Append Multiple Byte Slices in Go Using `append`?

Binär-Slices mit variablen Argumenten anhängen

Beim Versuch, zwei Byte-Slices (eins und zwei) mit append anzuhängen, ist ein Fehler aufgetreten . Das Problem ergibt sich aus dem Versuch, beide Slices als []Byte zu übergeben, ohne die richtige Syntax für die Übergabe variabler Argumente in Go zu verwenden.

Gemäß der Go-Programmiersprachenspezifikation:
"append(s S , x ...T) S // T ist der Elementtyp von S"

Für Ihren Fall, in dem das letzte Argument (zwei) ein []Byte ist Slice müssen Sie den ...-Operator anhängen:
"Wenn das letzte Argument einem Slice-Typ []T zuweisbar ist, kann es unverändert als Wert für einen ...T-Parameter übergeben werden, wenn das Argument folgt ...."

Daher lautet der richtige Code:

import "fmt"
func main() {
    one := make([]byte, 2)
    two := make([]byte, 2)
    fmt.Println(append(one[:], two[:]...))
}

Dadurch werden die beiden Slices korrekt angehängt und die kombinierte Binärdatei gedruckt Daten.

Das obige ist der detaillierte Inhalt vonWie hänge ich mehrere Byte-Slices in Go mithilfe von „append' korrekt an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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