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

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

DDD
DDD原创
2024-12-16 15:44:17897浏览

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中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn