flag包实现了命令行参数的解析。
使用flag.String(), Bool(), Int()等函数注册flag
下例声明了一个整数和字符串flag,解析结果保存在*int指针num 里 string 保存在name里
num := flag.Int("world",1234,"this is num")
name := flag.String("user","xiaoyu","我是小雨")
flag.Parse() //在所有flag都注册之后,调用这个函数 默认值就是该变量的初始值。
fmt.Println("num is value",*num)
fmt.Println("name is value",*name)
结果
返回命令行参数后的其他参数
//返回命令行参数后的其他参数
fmt.Println(flag.Args())
//返回命令行参数后的其他参数个数
fmt.Println(flag.NArg())
//返回使用的命令行参数个数
fmt.Println(flag.NFlag())