指针
1|0一、什么是指针
-
指针也是一种变量,但是它的功能只是用来存储变量内存地址(Memory Address),即指针变量的值为其他变量的内存地址
-
指针是变量,所以它本身也有内存地址
-
内存地址都是属于
int
类型的值 -
Go中的指针是不支持运算的(有些语言可以,如C语言)
-
2|0二、指针的定义
-
最关键的两个符合
&
表示取变量的内存地址,*
表示通过地址找到值
-
指针变量的类型为
*T
,T为数据类型 -
指针的空值为
nil
3|0三、向函数传递指针参数
- 分为三种类型的指针参数
- 数字、字符串类型的指针
- 数组类型的指针(不推荐,推荐替换为直接传切片)
- 切片类型(切片类型无需传递其指针,用来替代数组类型指针)
3|11. 传入字符串类型的指针
3|22. 传入数组类型的指针
- 假如我们想在函数内部修改一个数组,并希望函数外部的数组也同步修改,有两种方式
- 一种解决方案是把一个指向数组的指针传递给这个函数
- 另一种是传递该数组的切片(因为切片的结构就包括底层数组的指针,其本身没有值)
- 且传递数组类型的指针时,在函数内部,无需用符号
*
进行取值,可直接将参数当数组使用,Go的语法糖
3|33. 传入切片
- 传入切片类型,能使得代码更加简洁,且更符合Go语言的习惯
__EOF__

本文作者:BigSun丶
本文链接:https://www.cnblogs.com/Mcoming/p/18034715.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/Mcoming/p/18034715.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
分类:
Go从入门到精通
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!