gitee.com/zhongguo168a/gocodes@v0.0.0-20230609140523-e1828349603f/datax/binaryx/cal.go (about)

     1  package binaryx
     2  
     3  func AppendBytes(origin []byte, data []byte) []byte {
     4  	m := len(origin)
     5  	n := m + len(data)
     6  	if n > cap(origin) { // if necessary, reallocate
     7  		// allocate double what's needed, for future growth.
     8  		newSlice := make([]byte, (n+1)*2)
     9  		copy(newSlice, origin)
    10  		origin = newSlice
    11  	}
    12  	origin = origin[0:n]
    13  	copy(origin[m:n], data)
    14  	return origin
    15  }