在64位操作系统上,
以下代码如下:
println("Simple Array:")
var arrayint = [...]int{1, 2, 3, 4} //assign
fmt.Println(arrayint)
println("Simple Slice:")
var sliceint []int
sliceint = arrayint[:] //assign
fmt.Println(sliceint)以下是内存表示:

以下代码如下:
println("Array of arrays:")
var arrayofarrays [3][len(arrayint)]int
for i := range arrayofarrays { //assign
arrayofarrays[i] = arrayint
}
fmt.Println(arrayofarrays)
println("Array of slices:")
var arrayofslice [len(arrayofarrays)][]int
for i := range arrayofarrays { // assign
arrayofslice[i] = arrayofarrays[i][:]
}
fmt.Println(arrayofslice)
println("Slice of arrays:")
var sliceofarray [][len(arrayint)]int
sliceofarray = arrayofarrays[:]
fmt.Println(sliceofarray)编辑:下面的是内存表示:

以下代码如下:
var sliceofslices [][]int以下是内存表示:

关于以下项目:
sliceofslices = arrayofslice[:]sliceofslices的内存表示是什么?在使用之前需要了解..。
发布于 2020-04-11 16:14:57
arrayofslice是一个片数组,因为一个片的大小是24个字节,所以arrayofslice的大小是n* 24,其中n是元素计数。sliceofslices是一个带有支持数组arrayofslice的切片。
https://stackoverflow.com/questions/61159244
复制相似问题