buf := make([]int,16)
fmt.Println(buf,len(buf),cap(buf))
buf1 := buf[:5]
buf1 = append(buf1,5 )
buf[1] = 1
fmt.Println(buf1,len(buf1),cap(buf1))
fmt.Println(buf,len(buf),cap(buf))
buf2 := buf[:5:5]
fmt.Println(buf2,len(buf2),cap(buf2))
buf2 = append(buf2,6)
buf2 = append(buf2,7)
fmt.Println(buf2,len(buf2),cap(buf2))
fmt.Println(buf1,len(buf1),cap(buf1))
fmt.Println(buf,len(buf),cap(buf))
tmp := make([]int,0)
fmt.Println(tmp,len(tmp),cap(tmp))
tmp = append(tmp, 1,2,3,4,5)
buf = buf[:0]
fmt.Println(buf,len(buf),cap(buf))
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] 16 16
[0 1 0 0 0 5] 6 16
[0 1 0 0 0 5 0 0 0 0 0 0 0 0 0 0] 16 16
[0 1 0 0 0] 5 5
[0 1 0 0 0 6 7] 7 10
[0 1 0 0 0 5] 6 16
[0 1 0 0 0 5 0 0 0 0 0 0 0 0 0 0] 16 16
[] 0 0
[1 2 3 4 5] 5 6
[] 0 16