Go 简明笔记 中级篇

栏目: Go · 发布时间: 5年前

内容简介:每个变量在运行时都拥有一个地址,这个地址代表变量在内存中的位置。Go 语言中使用&符放在变量前面对变量进行“取地址”操作。For example:指针就像我们房子的地址,快递员只需要知道包裹上的地址,就能把包裹送达。

GO 数组、指针、结构体

数组

func main() {
   // 指定长度的数组
  var Fruit_set = [3]string {"Cherry","Banana","Apple"}
   // 不确定长度的数组
  var Food_set = [...] string{"cheese","bread","egg thrt","sandwich","salad"}
  for _,val :=range Fruit_set{
     fmt.Println(val)
  }
  fmt.Println("")
  for _,val :=range Food_set{
     fmt.Println(val)
  }

}
输出结果:
Cherry
Banana
Apple

cheese
bread
egg thrt
sandwich
salad

认识指针地址和指针类型

每个变量在运行时都拥有一个地址,这个地址代表变量在内存中的位置。Go 语言中使用&符放在变量前面对变量进行“取地址”操作。

For example:

指针就像我们房子的地址,快递员只需要知道包裹上的地址,就能把包裹送达。

代码示例:

func main(){
var pack = "Mr.Potato"    //定义一个变量
   fmt.Println("包裹的主人: ",pack)     
   fmt.Println("包裹主人的地址: ",&pack) // & 取地址值
}

输出结果:
包裹的主人:  Mr.Potato
包裹主人的地址:  0xc00004e1c0

声明指针 & 解引用

注意区分 * 和 & 两个符号。

var p *string 
p = &pack 
fmt.Println("p指针指向pack的地址 ",p)fmt.Println("p指针指引了pack的值:",*p)
输出结果:
p指针指向pack的地址  0xc00004e1c0
p指针指引了pack的值: Mr.Potato

注意步骤细节:

声明一个指针 注意:指针是存储一个变量的地址

注意:指针是存储一个变量的地址 所以这里要 & 取地址符号

要获得指针指向地址的值,我们可以使用*运算符 俗称解引用:

结构体

type Person struct { //定义结构体
  name string
  hight float32
  age int
  gender string
}

func main(){
  .... 
}

访问结构体成员

type Person struct { //定义结构体
  name string
  hight float32
  age int
  gender string
}

func main(){
   var person Person   //声明为Person 结构体类型
person.age = 21
person.name = "Nl"
person.hight = 178
person.gender = "male"


fmt.Println("姓名:",person.name)
fmt.Println("年龄:",person.age)
fmt.Println("身高:",person.hight)
fmt.Println("性别:",person.gender)
}

输出结果:
姓名: Nl
年龄: 21
身高: 175.8
性别: male

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Java并发编程的艺术

Java并发编程的艺术

方腾飞、魏鹏、程晓明 / 机械工业出版社 / 2015-7-1 / 59.00元

并发编程领域的扛鼎之作,作者是阿里和1号店的资深Java技术专家,对并发编程有非常深入的研究,《Java并发编程的艺术》是他们多年一线开发经验的结晶。本书的部分内容在出版早期发表在Java并发编程网和InfoQ等技术社区,得到了非常高的评价。它选取了Java并发编程中最核心的技术进行讲解,从JDK源码、JVM、CPU等多角度全面剖析和讲解了Java并发编程的框架、工具、原理和方法,对Java并发编......一起来看看 《Java并发编程的艺术》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

MD5 加密
MD5 加密

MD5 加密工具

SHA 加密
SHA 加密

SHA 加密工具