Go 简明笔记 中级篇

faceNL · · 990 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

# GO 数组、指针、结构体 ### 数组 ```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: 指针就像我们房子的地址,快递员只需要知道包裹上的地址,就能把包裹送达。 代码示例: ```go func main(){ var pack = "Mr.Potato" //定义一个变量 fmt.Println("包裹的主人: ",pack) fmt.Println("包裹主人的地址: ",&pack) // & 取地址值 } 输出结果: 包裹的主人: Mr.Potato 包裹主人的地址: 0xc00004e1c0 ``` **声明指针 & 解引用** 注意区分 * 和 & 两个符号。 ```go var p *string p = &pack fmt.Println("p指针指向pack的地址 ",p)fmt.Println("p指针指引了pack的值:",*p) 输出结果: p指针指向pack的地址 0xc00004e1c0 p指针指引了pack的值: Mr.Potato ``` 注意步骤细节: 声明一个指针 注意:指针是存储一个变量的地址 注意:指针是存储一个变量的地址 所以这里要 & 取地址符号 要获得指针指向地址的值,我们可以使用*运算符 俗称解引用: ## 结构体 ```go type Person struct { //定义结构体 name string hight float32 age int gender string } func main(){ .... } ``` ### 访问结构体成员 ```go 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 ```

有疑问加站长微信联系(非本文作者))

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

990 次点击  
加入收藏 微博
1 回复  |  直到 2019-05-08 09:42:21
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传