Bagaimanakah saya boleh Menggunakan Go append dengan Dua []bait Slices atau Arrays?
Dalam Go, menambahkan dua bait hirisan tatasusunan mungkin menghadapi ralat disebabkan jenis tidak sepadan. Berikut ialah pandangan yang lebih dekat dan pendekatan yang betul untuk mencapainya.
Masalah:
Apabila cuba menambah kepingan tatasusunan dua bait, ralat seperti "tidak boleh menggunakan [array] ( taip []uint8) sebagai jenis uint8 dalam lampiran" mungkin timbul. Ini berlaku kerana fungsi tambah menjangkakan hujah sepadan dengan jenis elemen hirisan.
Penyelesaian:
Untuk menyelesaikan isu ini, anda perlu menentukan jenis kepingan secara eksplisit menggunakan []T... sintaks untuk hujah akhir. Dalam kes ini, T ialah []bait.
Berikut ialah contoh:
package main import ( "fmt" ) func main() { one := make([]byte, 2) two := make([]byte, 2) one[0] = 0x00 one[1] = 0x01 two[0] = 0x02 two[1] = 0x03 result := append(one[:], two[:]...) fmt.Println(result) }
Dalam kod ini, hasilnya akan dicetak sebagai "[0 1 2 3]", dengan berkesan menggabungkan kepingan tatasusunan dua bait. Notasi "..." memastikan bahawa dua[:] diluluskan sebagai hujah hirisan.
Nota Tambahan:
Dengan mengikuti garis panduan ini, anda boleh menambah kepingan tatasusunan berbilang bait dengan betul dalam Go.
Atas ialah kandungan terperinci Bagaimana untuk Menambah Dua Keping []bait dengan betul dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!