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!