如何在Golang中正确初始化结构体中的结构体指针

I have a struct that generated by goa

type a_weird_struct struct{
 a *string
 b *string
 c *struct{
  d *int
  e *int
  f *int
 }
}

what is the proper way to assign to this struct. to be specific, how to init the struct point "c".

try to init pointer like this

func initPointer() {
    astr, bstr := "xxxx", "yyyy"
    dint, eint, fint := 1, 2, 3
    x := &a_weird_struct{
        a: &astr,
        b: &bstr,
        c: &(struct {
            d *int
            e *int
            f *int
        }{
            d: &dint,
            e: &eint,
            f: &fint,
        }),
    }
     fmt.Println(x)
}