2017-06-26 69 views
0

如何訪問GOLANG中STRUCTURE中指針或FIELD的地址。我有整個結構變量的地址或指針,但無法正確訪問結構內部字段的地址。到目前爲止,我已經嘗試了反射,但似乎打破了某處。任何幫助,高度讚賞。Golang結構變量中Field的訪問地址

回答

3

例如,

package main 

import (
    "fmt" 
) 

type S struct{ F1, F2 int } 

func main() { 
    s := new(S) 
    f1, f2 := &s.F1, &s.F2 
    fmt.Printf("%p %p %p\n", s, f1, f2) 
} 

輸出:

0x1040a128 0x1040a128 0x1040a12c 
+0

謝謝你的分享。它看起來非常簡單,但在代碼 final.id =&(intermediate.ID())中失敗。 final中的id字段是一個字符串*,而intermediate.ID()則返回一個字符串。目前我必須創建一個臨時變量來存放intermediate.ID()值,然後分配它的地址。我希望避免臨時變量。 –