在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中文網其他相關文章!