package main
import (
    "fmt"
    "reflect"
)
type A struct {
    D *int
}
func main() {
    a := &A{}
    v := reflect.ValueOf(a)
    e := v.Elem()
    f := e.Field(0)
    z := reflect.Zero(f.Type().Elem())
    f.Set(z)
    fmt.Println(z)
}
panic: reflect.Set: value of type int is not assignable to type *int
how to set the *D to default value use reflect
You need to have a pointer value (*int), but the reflect documentation states for func Zero(typ Type) Value that:
The returned value is neither addressable nor settable.
In your case you can instead use New:
z := reflect.New(f.Type().Elem())
                        try this
var i int
f.Set(reflect.ValueOf(&i))
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With