首页 > 后端开发 > Golang > Go中如何打印并存储结构体变量的内存地址?

Go中如何打印并存储结构体变量的内存地址?

DDD
发布: 2024-12-16 15:44:17
原创
895 人浏览过

How Do I Print and Store the Memory Address of a Struct Variable in Go?

在 Go 中打印和存储结构体变量的地址

在 Go 中声明结构体变量并为其分配指针时,需要打印和存储存储他们的地址。一个常见的误解是使用 & 运算符,当变量名作为前缀时,它表示变量的地址。然而,Go 结构体的默认打印格式将结构体元素的最后一行视为其地址,输出语法如 &{field0 field1 ...}。

要显式打印结构体变量的地址,我们需要在格式字符串中使用 %p 动词:

fmt.Printf("%p\n", &r)
登录后复制

这将输出结构变量的准确地址r.

将结构变量的地址存储在另一个变量中也是可能的。以下代码演示了这一点:

var addr uintptr
addr = &r
登录后复制

这将 r 的地址分配给 uintptr 类型的 addr 变量。

以上是Go中如何打印并存储结构体变量的内存地址?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板