使用变量参数附加二进制切片
尝试使用append附加两个字节切片(一个和两个)时遇到错误。该问题源于尝试将两个切片作为 []byte 传递,而没有使用 Go 中传递变量参数的正确语法。
根据 Go 编程语言规范:
"append(s S , x ...T) S // T 是 S 的元素类型
对于您的情况,最后一个参数(二)是 [] 字节切片,您必须附加 ... 运算符:
"如果最后一个参数可分配给切片类型 []T,则如果参数后跟...."
因此,正确的代码是:
import "fmt" func main() { one := make([]byte, 2) two := make([]byte, 2) fmt.Println(append(one[:], two[:]...)) }
这会正确附加两个切片并打印组合的二进制文件数据。
以上是如何在 Go 中使用 `append` 正确追加多个字节片?的详细内容。更多信息请关注PHP中文网其他相关文章!