这是我纯手写的《Go语言入门》,手把手教你入门Go。源码+文章,看了你就会🥴,此处应有掌声👏👏👏。
文章中所有的代码我都放到了github.com/GanZhiXiong/go_learning这个仓库中。
Go程序结构
一个基本的Go程序代码由三部分构成:
- 包
- 引入依赖
- main函数程序入口
// 包,表明代码所在的模块(包)
package main
// 引入代码依赖
// IDE会自动导入包,所以可以直接使用fmt,而不需要写下面代码
import "fmt"
// 程序入口,功能实现
func main() {
fmt.Println("Start")
fmt.Println("Hello, World!")
fmt.Println("End")
}
程序入口
Go程序的入口必须要满足以下两个要求:
- 必须是main包:package main
比如将main修改为main1,就会提示一个警告⚠️Unused function 'main'
,并且go build hello.go Configuration
不可用。如下图所示:
- 必须是main函数:func main()
比如将函数名称修改为其他名称,同样会出现这个上图一样的问题。
需要注意的是:Go文件名不一定是main.go
退出返回值
C++或Java通过main函数可以返回值的,例如返回退出的状态。
但是Go中的main函数是不支持任何返回值的。
编写代码验证如下图所示:
在Go中main函数返回程序退出状态,使用os.Exit(code)
,code的范围为0-125
- 正常退出code使用0
- 异常退出code使用非0
获取命令行传参
C++和Java的main函数是支持传入参数的,
但是Go语言main函数则不支持。
但是它可以和Node.js一样通过命令行传入参数
在代码中,通过os.Args获取参数数组
例如:
支持🤟
🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟
- 🎸我会持续编写【软件开发相关】的文章,保持每周至少一篇文章。
- 🎸如果你也是【软件工程师】,【关注❤️我】,一定会对你有所帮助。
- 🎸如果这篇文章对你有所帮助,那就麻烦,【点赞👍】。
- 🎸您的支持将给与我更大的动力,谢谢😀。
🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟🤟