ch01/main.go
package main
import "fmt"
func main() {
fmt.Println("Hello, 世界")
}
[root@localhost ch01]# pwd
/home/liushiju/git/gotour
[root@localhost ch01]# go run ch01/main.go
Hello, 世界
go:Go语言开发工具包提供的命令,可以运行Go语言代码,并进行编译,生成二进制文件等
run:go命令的子命令,表示运行Go语言代码的意思
ch01/main.go就是写的代码文件,整个
go run ch01/main.go
表示运行main.go里面的Go语言代码
要让一个Go语言程序成功运行起来,只需要
package main
和main
函数这两个核心部分;package main代表的是一个可运行的应用程序,而main函数则是这个应用程序的主入口
package main
package
是Go语言声明包的关键字main
是要声明的包名,在Go语言中main是一个特殊的包,代表你的Go语言项目是一个可运行的应用程序,而不是一个被其他项目引用的库import "fmt"
fmt
包import
是Go语言的关键字,表示导入包的意思func main()
func
是Go语言中的关键字,表示定义一个函数或者方法的意思main
是函数名在Go语言中
main函数
是一个特殊的函数,它代表整个程序的入口,也就是程序在运行的时候,会先调用main函数,然后通过main函数再调用其他函数,达到实现项目业务需求的目的
fmt.Println("Hello, 世界")
fmt
包的Println
函数打印"Hello,世界"这段文本Println
函数是属于包fmt
的函数,这里需要它打印输出}
main
函数体的结束sudo tar -C /usr/local -xzf go1.15.linux-amd64.tar.gz
/etc/profile
或者$HOME/.profile
文件中
export PATH=$PATH:/usr/local/go/bin
[root@localhost ~]# go version
go version go1.15.4 linux/amd64
GOPATH
和GOBIN
go get
命令获取的项目go install
命令,会把生成的Go程序安装到GOBIN目录下,以供在终端使用/etc/profile
或者$HOME/.profile
文件保存export GOPATH=/home/liushiju/golang
export GOBIN=$GOPATH/bin
采用Go Module的方式,可以在任何位置创建你的Go语言项目。
/home/liushiju/git/gotour
cd /home/liushiju/git/gotour
go mod init src #src为Go 的Module
[root@localhost gotour]# cat go.mod
module src
go 1.15
[root@localhost git]# tree gotour
gotour
├── ch01
│ └── main.go
├── go.mod
└── lib
完成项目后,可以编译生成可执行文件,也可以把它发布到
$GOBIN
目录,以供在终端适用
编译ch01/main.go
go build ./ch01/main.go
测试
[root@localhost ch01]# ./main
Hello, 世界
$GOBIN
目录或者任意位置[root@localhost gotour]# go install ./ch01/main.go
[root@localhost gotour]# main
Hello, 世界
# 使用go install命令即可,在任意终端,输入main回车,都会打印"Hello, 世界"
Go 语言开发工具包的另一强大功能就是可以跨平台编译。什么是跨平台编译呢?就是你在 macOS 开发,可以编译 Linux、Window 等平台上的可执行程序,这样你开发的程序,就可以在这些平台上运行。也就是说,你可以选择喜欢的操作系统做开发,并跨平台编译成需要发布平台的可执行程序即可。
GOOS
和 GOARCH
这样通过组合不同的GOOS和GOARCH,就可以编译出不同的可执行程序
[root@localhost gotour]# GOOS=windows GOARCH=amd64 go build ./ch01/main.go
[root@localhost gotour]# ls
ch01 ch02 go.mod lib main.exe
关于 GOOS 和 GOARCH 更多的组合,参考官方文档的
$GOOS
and$GOARCH
这一节即可
改编示例"Hello,世界"的代码,打印出自己的名字
package main
import "fmt"
func main(){
fmt.Println("Hello, Hanson世纪")
}
[root@localhost ch01]# go run zuoye.go
Hello, Hanson世纪
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。