十六:GO语言的数组和切片(slice)

1.数组可以存放多个同样的数据类型数据,数组也是一种数据类型,在GO中,数组是值类型

  数组的定义

  语法:var 数组名 [数组大小]数据类型

  示例:var array [5]int

  赋值:array[0] = 1 a[1] = 30  //[]中括号中输入的是数组中元素的下标,从0开始,0就是第一个元素

  十六:GO语言的数组和切片(slice)

 

   上图中,前面三种都是顺序赋值,第四种在初始化时指定给某一个元素赋值,

 

  数组的内存地址就是数组中第一个元素的地址,数组元素的内存地址是连续的,取数组元素时,实际上是在取到首元素地址后,根据数据类型增加相应的内存地址即可,比如int64类型的数组,则每次增加8个字节即可取到下一个元素,int32类型的数组则每次增加4个字节取下一个元素

  可以仔细观察下图中最后一行输出每个地址的最后两位 a0=>a8=>b0

十六:GO语言的数组和切片(slice)

 

上一篇:见微知著 带你透过内存看 Slice 和 Array的异同


下一篇:C++ 通用锁管理