本文先介绍go中前两个派生的类型:指针、数组。

 

1)指针:存放地址的类型。

 做系统编程、操作系统或者网络应用指针更是不可或缺的一部分!

         Go语言为程序员提供了控制数据结构指针的能力,但是,并不能进行指针运算(+,-,<,<=等等)

    go提供垃圾回收,来处理指针的空间回收。

    Go语言的指针分两部分:类型指针,切片。

=》类型指针,就是我们c中的普通指针。  直接使用指针,而无须拷贝数据

=》切片,一种结构体,起始元素的原始指针、元素数量和容量组成! 可见,切片使用到了指针

 

创建指针的方式:普通创建,new创建(new() 函数可以创建一个对应类型的指针,创建过程会分配内存,被创建的指针指向默认值)

=》var  val int = 100

  var  p_val *int = &val

=》str := new(string)

 

2)数组(同类型,固定大小。分为,一维数组,多维数组)

因为数组的长度是固定的,所以在Go语言中很少直接使用数组!!!

数组知识点:数组声明、数组定义、数组遍历、

  =》数组声明:  var 数组变量名 [元素数量]Type = [元素数量]Type{....}

            数组变量名 [元素数量]Type :=   [元素数量]Type{....}

  =》数组元素使用:  数组变量名[下标]

  =》数组遍历:  for   range来遍历

实例:

var team [3]string
team[0] = "hammer"
team[1] = "soldier"
team[2] = "mum"
for k, v := range team {
  fmt.Println(k, v)
}

结果:
0 hammer
1 soldier
2 mum

 

posted on 2020-06-03 08:41  远远A心  阅读(246)  评论(0编辑  收藏  举报