$ vim first.go
//创建包
package main
//导入包
import ("fmt")
//主函数
func main() {
fmt.Println("hello world")
}
创建包
Go以包作为管理工具,每个Go源代码必须声明所属包。
package main
package
是声明包名的关键字,其后跟包名。
Go的包与文件夹是一一对应的
- 一个目录下的同级文件属于同一个包
- 包名可以与目录名不同
-
main
包是Go的入口包,一个Go程序中有且仅有一个main
包。
导入包
包声明后可使用import
语句导入程序中所以来的包,导入的包名使用"
双引号包裹。
import ("fmt")
当前包中导入fmt
包,告知编译器需要使用fmt
包中的函数或变量等。
Go语言标准内提供用于格式化输入输出的内容,类似于C语言中的stdio.h
头文件。
导入的包中不能含有代码中没有使用的包,否则编译器会报出编译错误import and not used
。
使用import
关键字引入多个包时,import
使用()
小括号名包裹,每个包名独占一行。
入口函数
func main() {
fmt.Println("hello world")
}
- Go程序的入口函数为
main()
函数,是程序启动后运行的第一个函数。 -
main()
函数只能声明在main
包中,不能声明在其他包中。 - 一个
main
包中必须有且仅有一个main
函数 -
main()
函数是自定义函数的一种,Go中函数以关键字func
开头。
函数定义格式
func 函数名 (参数列表) (返回值类型列表){
函数体
}
- 函数名:由数字、字母、下划线构成,首字母非数字,同一个包禁止出现同名函数。
- 参数列表:参数由参数变量和参数类型组成
- 返回值类型列表:当函数有返回值时函数体内必须使用
return
语句返回 - 函数体:重复调用的代码片段
- Go函数左大括号
{
必须和函数名同行
fmt.Println("hello world")
- Println是fmt包的用于格式化输出数据的函数,类似C中的printf函数。
- Println函数打印完毕后自动换行,ln即Line。
- 点号
.
是Go运算符表示调用fmt包中的Println函数 - 语句结尾无需添加
;
分号做结束符