go 切片越界怎么办?
var test []int = []int{1, 2, 3, 4}
length := len(test)
if length < 12{
tmp:=make([]int, 12-length)
test = append(test, tmp...)
}
test[11] = 2
fmt.Println(test)
封装了一下,如下:
//扩展m长度
func Cm_append_num(a []byte, m int) []byte{
tmp:= (make([]byte, m))
glog.Debugf("buf append %d byte", m)
a = append(a,tmp...)
return a
}
本文介绍了一种解决Go语言中切片越界问题的方法,通过动态扩展切片长度来避免运行时错误。具体实现包括检查当前切片长度是否小于所需长度,并使用make和append函数进行扩展。

365

被折叠的 条评论
为什么被折叠?



