os包的Args包括了命令名本身,作为读取参数的第一个值。
flag.Args读取命令后的入参(要配合flag.Parse()使用)。

也就是,os的比flag多一个命令名的读取。

package main
 
import (
  "flag"
  "fmt"
  "os"
)
 
func main() {
 
  // os.Args方式
  args := os.Args
  if args == nil || len(args) < 2 {
    fmt.Println("Hello 世界!")
  } else {
    fmt.Println("Hello ", args[1]) // 第二个参数,第一个参数为命令名
  }
 
  // flag.Args方式
  flag.Parse()
  var ch []string = flag.Args()
  if ch != nil && len(ch) > 0 {
    fmt.Println("Hello ", ch[0]) // 第一个参数开始
  }
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

标签:
os包,flag包,读取main命令入参

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
无争山庄资源网 Copyright www.whwtcm.com

评论“使用os包和flag包实现读取main命令入参”

暂无“使用os包和flag包实现读取main命令入参”评论...

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。