String, Int, Bool
Each returns a pointer. After flag.Parse(), dereference to read the value.
var (
addr = flag.String("addr", ":8080", "listen address")
timeout = flag.Duration("timeout", 30*time.Second, "request timeout")
debug = flag.Bool("debug", false, "enable debug logging")
)
func main() {
flag.Parse()
fmt.Println(*addr, *timeout, *debug)
}