如何从 golang 中的切片获取结构指针

这是代码:


package main


import (

    "fmt"

)


type demo struct {

     name string

}


func main() {

     demo_slice := make([]demo, 3)

     demo_slice[0] = demo{"str1"}

     demo_slice[1] = demo{"str2"}

     demo_slice[2] = demo{"str3"}


     point_demo_slice := make([]*demo, 3)

     for index, value := range demo_slice {

          fmt.Printf("\n%v==++++++++++++++%p\n", value, &value)

          point_demo_slice[index] = &value

     }

}

结果:


{str1}==++++++++++++++0x20818a220


{str2}==++++++++++++++0x20818a220


{str3}==++++++++++++++0x20818a220

0x20818a220 是最后一个元素的指针值。


为什么所有的指针值都一样?


我怎样才能得到那些正确的指针值?


aluckdog
浏览 200回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go