首頁 > 後端開發 > Golang > Go中如何列印結構體的記憶體位址?

Go中如何列印結構體的記憶體位址?

DDD
發布: 2024-11-30 02:27:14
原創
498 人瀏覽過

How Can I Print the Memory Address of a Struct in Go?

在Go 中列印結構體變數的位址

在Go 中,& 運算子傳回變數的位址,* 運算子傳回變數的地址取消引用指標以存取它指向的值。但是,當使用 fmt.Println() 列印結構體的值時,將會套用預設格式,這會導致結構體值的位址採用特殊語法。

印出結構體變數的位址明確地,格式字串可以與 %p 動詞一起使用。此動詞指定該值應列印為指標。

考慮以下範例:

type Rect struct {
    width int
    name int
}

func main() {
    r := Rect{4, 6}
    fmt.Printf("%p\n", &r)
}
登入後複製

此程式碼將以十六進位數字輸出結構體變數 r 的位址。在這種情況下,輸出可能類似於:

0x414020
登入後複製

透過使用 %p 動詞,您可以擷取並列印 Go 中任何變數的位址,包括結構變數。這對於調試目的或將地址傳遞給需要它們的函數很有用。

以上是Go中如何列印結構體的記憶體位址?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板