[go 学习笔记] 一、go 语言 hello world 程序开发

开发环境构建

GOPATH

  1. 在1.8版本前必须设置这个环境变量
  2. 1.8以及更高版本如果没有设置,则使用默认值
    在Mac上GOPATH可以通过修改 ~/.bash_profile来设置

程序基本结构

package main //包,表明代码所在的模块(包)和java以及dotnet 命名空间是相似的

import "fmt" //依赖关系引用 和java以及dotnet的using、import相似

//方法函数
func main(){
  fmt.Println("Hello World!")
}

应用程序入口

  1. 必须是main包:package main
  2. 必须是main方法: func main(){}
  3. 文件名称不强制是main.go,也可以是index.go

退出返回值

  • Go中main函数不支持任何返回值
  • 通过os.Exit来返回状态 需要import “os”
    package hello
    

import (
“fmt”
“os”
)

func main() {
fmt.Println(“Hello World”)

os.Exit(-1)

}

执行结果:
```shell
$ go run hello_world.go                
Hello World
exit status 255

获取命令行参数

  • main函数不支持传入参数
  • 在程序中直接通过 os.Args 获取命令行参数

示例代码

package main

import (
    "fmt"
    "os"
)

func main() {
    fmt.Println(os.Args)
    fmt.Println("Hello World")
}

输出结果

$ go run hello_world.go zhang
[/var/folders/zg/0_xcqssx6pj7g8p96ppl66ww0000gn/T/go-build244907203/b001/exe/hello_world zhang]
Hello World

改进后的代码:

package main

import (
    "fmt"
    "os"
)

func main() {
    if len(os.Args)>1 {
        fmt.Println("Hello World",os.Args[1])
    }else {
        fmt.Println("Hello World")
    }
}

输出结果

$ go run hello_world.go zhang
Hello World zhang

示例代码请访问: https://github.com/wenjianzhang

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!