【问题标题】:read flag argument value ip address读取标志参数值ip地址
【发布时间】:2015-04-01 03:49:26
【问题描述】:

我正在尝试从参数中读取 IP 地址:

var ipaddress_string string
flag.StringVar(&ipaddress_string, "ip", "127.0.0.1", "an ip string var")
ipaddress := net.ParseIP(ipaddress_string)
fmt.Println(ipaddress)

执行:
应用程序-ip=10.0.0.1

应用程序-ip="10.0.0.1"

但是 127.0.0.1 总是出来?

【问题讨论】:

  • 看来您需要从docs 拨打flag.Parse
  • 你说得对,我的朋友 :-) 谢谢。除了投票认为有用之外,我还能做更多的事情吗?

标签: go


【解决方案1】:

根据the docs,您需要在将所有标志绑定到变量后调用flags.Parse()。下面是一个完整的、可运行的例子:

package main

import (
    "flag"
    "fmt"
    "net"
)

func main() {
    var ipaddress_string string
    flag.StringVar(&ipaddress_string, "ip", "127.0.0.1", "an ip string var")
    flag.Parse()
    ipaddress := net.ParseIP(ipaddress_string)
    fmt.Println(ipaddress)
}

【讨论】:

    猜你喜欢
    • 2016-06-30
    • 1970-01-01
    • 2011-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多