1. 2.5 Hello golang

编写第一个hello golang

创建空文件hello.go,尝试执行

产生如下报错

解答:

在go语言中,所有go源码文件必须声明隶属于某一个包,至少一个package main,main为自己创建的包名。

1.1. 正确的hello golang

Go代码文件,程序中必须指定启动函数main(),如同小汽车的点火开关。

Hello.go

运行

结果

但是如上的代码,并不美观,go提供了格式化代码命令

格式化后,代码风格如下

 

 

1. 2.6 Golang命令

在命令行执行go命令查看相关的Go语言命令:

实用命令

go env用于打印Go语言的环境信息。

go run命令可以编译并运行命令源码文件。

go get可以根据要求和实际情况从互联网上下载或更新指定的代码包及其依赖包,并对它们进行编译和安装。

go build命令用于编译我们指定的源码文件或代码包以及它们的依赖包。

go install用于编译并安装指定的代码包及它们的依赖包。

go clean命令会删除掉执行其它命令时产生的一些文件和目录。

go doc命令可以打印附于Go语言程序实体上的文档。我们可以通过把程序实体的标识符作为该命令的参数来达到查看其文档的目的。

go test命令用于对Go语言编写的程序进行测试。

go list命令的作用是列出指定的代码包的信息。

go fix会把指定代码包的所有Go语言源码文件中的旧版本代码修正为新版本的代码。

go vet是一个用于检查Go语言源码中静态错误的简单工具。

go tool pprof命令来交互式的访问概要文件的内容。

 

 

 

1. 2.7 Go交叉编译

Golang 支持交叉编译,在一个平台上生成另一个平台的可执行程序,最近使用了一下,非常好用,这里备忘一下。

Mac 下编译 Linux 和 Windows 64位可执行程序

Linux 下编译 Mac 和 Windows 64位可执行程序

Windows 下编译 Mac 和 Linux 64位可执行程序

GOOS:目标平台的操作系统(darwin、freebsd、linux、windows) GOARCH:目标平台的体系架构(386、amd64、arm) 交叉编译不支持 CGO