美文网首页
Go语言命令行和运算符

Go语言命令行和运算符

作者: AuglyXu | 来源:发表于2018-09-20 16:12 被阅读0次

命令行参数

  • 在Go语言中main函数是不接收任何参数的, 但是还是可以通过其它方式来接收命令行参数

方法一

导入os包,然后通过os包的Args属性获取命令行参数

  • 注意点:

    1. 和C语言一样, 默认会将当前被执行程序的可执行文件的路径传递给我们

    2. 和C语言一样, 无论外界传入的数据是什么类型, OS包拿到的都是字符串类型

  • 通过os包获取命令行参数的弊端:

    1. 如果用户少传入了参数, 会报错

    2. 无论用户传入的是什么类型, 最终获取到的都是字符串类型

    3. 传递参数的时候, 必须按照业务逻辑的顺序来传递, 传递的顺序不能被打乱

     fmt.Println(os.Args[0])
     fmt.Println(os.Args[1])
     fmt.Println(os.Args[2])
     fmt.Printf("%T\n", os.Args[0])
     fmt.Printf("%T\n", os.Args[1])
     fmt.Printf("%T\n", os.Args[2])

方法二

导入flag包,通过flag包中的stringVar函数获取

  • flag.StringVar(&name, "name", "默认的名称", "接收用户的姓名")
    • 第一个参数: 要把接收到的数据保存到哪
    • 第二个参数: 用于接收的字段名称 -name=lnj
    • 第三个参数: 如果用户没有传递参数时的默认值
    • 第四个参数: 用户输入--help的时候的提示信息
  • 注意点: 通过flag包接收用户输入的命令行参数, 还必须将编写好的参数注册到命令行(flag.Parse())
    var name string
    flag.StringVar(&name, "name", "默认姓名", "接收姓名")
    var age int
    flag.IntVar(&age, "age", -1, "接收年龄")
    var height float64
    flag.Float64Var(&height, "height", 0.0, "接收身高")

    flag.Parse()//注册命令行参数

    fmt.Println(name)
    fmt.Printf("%T\n", name)
    fmt.Println(age)
    fmt.Printf("%T\n", age)
    fmt.Println(height)
    fmt.Printf("%T\n", height)


运算符

只列与C语言不同的地方

1.++ , --不能放在变量前

2.不同类型的变量不能进行运算

3.+号可以用于拼接字符串

4.Go语言没有非0即真的概念,所有的关系运算符返回的都是true和false

5.Go语言多一个逻辑清零运算符
&^ 逻辑清零运算符
假如a = 9 ,b = 6
a &^ b如下
如果b的二进制的当前位是1, 那么就清零
如果b的二进制的当前位不是1, 那么就保留a对应二进制位的数据

相关文章

  • Go语言命令行和运算符

    命令行参数 在Go语言中main函数是不接收任何参数的, 但是还是可以通过其它方式来接收命令行参数 方法一 导入o...

  • Go语言探索 - 5(原创)

    Go语言基础系列博客用到的所有示例代码 在上一篇文章中,主要学习了Go语言的算术运算符、关系运算符 、逻辑运算符 ...

  • 08-GoLang运算符

    算术运算符 C语言中算术运算符有 Go语言中的算数运算符和C语言一样 并且用法都一样 注意点: 不同类型的常量(字...

  • 06-Go语言运算符

    算术运算符 Go语言算术运算符 关系运算符 逻辑运算符 位运算符 其他运算符

  • 08-Go语言运算符-指趣学院

    算数运算符 算数运算符和C语言几乎一样 注意点:只有相同类型的数据才能进行运算 Go语言中++、--运算符不支持前...

  • Go语言学习基础笔记

    Go 1.声明变量 2.Go语言常量 3.运算符 4.for循环 5.Go函数 6.数组声明 7.语言指针 Go ...

  • Go标准库flag使用

    Go语言标准库flag基本使用 Go语言内置的flag包实现了命令行参数的解析,flag包使得开发命令行工具更为简...

  • 【Golang 基础】Go 语言的操作符

    Go 语言的运算符 算术运算符 +:相加; -:相减; *:相乘; /:相除; %:求余; ++:自增; --:自...

  • Go命令

    假如你已安装了golang环境,你可以在命令行执行go命令查看相关的Go语言命令: go env用于打印Go语言的...

  • Learn Golang in Day 4

    Learn Golang in Day 4 大纲 Go语言运算符算术运算符关系运算符逻辑运算符位运算符赋值运算符其...

网友评论

      本文标题:Go语言命令行和运算符

      本文链接:https://www.haomeiwen.com/subject/ubdnnftx.html