01、go安装 | 第一个程序 | 以及 变量

1、安装

2、第一个程序

--代码示例:
    package main //非注释的第一行必须为该行,当执行入口在这一行时,package名称必须是main

    import (
    	. "fmt" //导入包名
    )

    func main() { //大括号不能独立一行,会编译报错
    	Println("黎明")
    }

--命令:
    --go run hello.go  # 运行 hello.go 文件
    --go build hello.go  # 生成可执行二进制文件
    --go build -o hellolala.exe hello.go  # 规定可执行二进制文件名称
    --go install hello.go  # 先 go build,再将可执行二进制文件添加到环境变量中,可以在任何地方执行

3、交叉编译 | 跨平台编译

--交叉编译|跨平台编译:在windows中编译一个可以在linux执行的二进制文件

--如何在 windows中编译出一个 可以在linux中执行的文件:
    --打开 cmd,输入如下命令:
        SET CGO_ENABLED=0&&SET GOOS=linux&&SET GOARCH=amd64
    --再执行 go build ***.go -o name.exe 即可
    --再设置回来:
        SET CGO_ENABLED=0&&SET GOOS=windows&&SET GOARCH=amd64

4、变量 的 声明定义

--函数外只能放置标识符[ 变量|常量|函数|类型 ]的申明,不能直接写一个语句
    fmt.Println("liming")  // 这种在函数外写语句是违法的
    s1 = "liming"  // 也是违法的

    var s1 string  // 申明变量合法

--标识符:
    --Go语言中标识符由字母数字和_(下划线)组成,并且只能以字母和_开头。

--go的25个关键词:
    --break        default      func         interface    select
      case         defer        go           map          struct
      chan         else         goto         package      switch
      const        fallthrough  if           range        type
      continue     for          import       return       var
此外,Go语言中还有37个保留字。
    -- Constants:    true  false  iota  nil

           Types:    int  int8  int16  int32  int64  
                     uint  uint8  uint16  uint32  uint64  uintptr
                      float32  float64  complex128  complex64
                      bool  byte  rune  string  error

       Functions:   make  len  cap  new  append  copy  close  delete
                    complex  real  imag
                    panic  recover

--变量使用前必须申明:
    --申明:声明一个变量必须指定变量类型
        var 变量名 变量类型
    --举例:
        var s1 string
        var int01 int
        var isOk bool

    --示例:
        package main

        import . "fmt"

        func main() {
	        var s1 string
	        s1 = "yuelei"
	        Println("定义的变量为:", s1)
        }

    --批量申明:
        var (
            s1 string
            int01 int
            isOk bool
        )

--变量初始化:
    --var 变量名 类型 = 表达式  // 一次申明一个
        var name string = "Q1mi"
        var age int = 18

    --一次声明多个变量
        var ( // 多个变量申明赋值
	        age int
	        name string
	        c bool
        )

        age = 100
	    name = "liming"
	    c = false

        var age, name = 20, “liming”  // 也可以一行直接赋值多个变量

    [注:] 变量申明赋值之后必须使用,否则编译无法通过

--如果觉得代码比较混乱 
    --go fmt main.go  // 检查代码格式

--变量定义示例:
    package main

    import . "fmt"

    var (
	    a int
	    b string
	    c bool
    )

    func main() {
	    a = 100
	    b = "liming"
	    c = false

	    Print(c)  // 打印一个字符
	    Printf("name is : %s", b)  // 格式化输出字符串
	    Println(a)  // 打印之后加一个换行符
    }    

5、变量 特殊的声明定义

--声明变量同时赋值
    --var s1 string = "liming"

--类型推导 (根据变量值推到变量类型)
    --var s2 = "20"

--简短变量申明
    --s3 := "sdfgh"  // 方式二 的简写方式

6、匿名变量

--在使用多重赋值时,如果想要忽略某个值,可以使用匿名变量(anonymous variable)。 匿名变量用一个下划线_表示,例如:
    func foo() (int, string) {
	    return 10, "Q1mi"
    }
    func main() {
	    x, _ := foo()
	    _, y := foo()
	    fmt.Println("x=", x)
	    fmt.Println("y=", y)
    }
--匿名变量不占用命名空间,不会分配内存,所以匿名变量之间不存在重复声明。 (在Lua等编程语言里,匿名变量也被叫做哑元变量。)

--注意事项:
    --函数外的每个语句都必须以关键字开始(var、const、func等)
    -- :=不能使用在函数外,因为这里有了赋值语句
    --_多用于占位,表示忽略值。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值