让我们来开始第一个程序
package main import "fmt" func main() { /*输出"Hello World!"*/ fmt.Println("Hello World!") }
第 1 行 package main 定义了包名。必须在源文件中非注释的第 1 行指明这个文件属于哪个包,例如 package main。package main 表示一个可独立执行的程序,每个Go语言应用程序都需要包含一个名为 main 的包,并且该包中包含一个名为 main() 的函数(该函数是Go语言可执行程序的执行起点,既不能带参数,也不能定义返回值)。
第 2 行 import “fmt” 中 import 语句用于导入该程序所依赖的包。由于本示例程序中用到了 Println() 函数,而该函数属于 fmt 包,所以需要导入 fmt 包,fmt 包实现了格式化 I/O(输入/输出)。
第 3 行 func main() 是程序入口。所有Go语言函数都是以关键字 func 开头的,每一个可执行程序都必须包含一个 main() 函数,这个 main() 函数通常是程序启动后第一个执行的函数,如果有 init() 函数则会先执行 init() 函数。
第 4 行 /*…*/ 是程序的注释,在程序执行时,注释的部分将被程序忽略,不会执行。
第 5 行 fmt.Println(…) 用来将字符串输出到控制台,并在最后自动增加一个换行字符\n
。使用 fmt.Print(“Hello, World!\n”) 也会得到相同的结果。
除此之外,还有以下几点值得注意:
- 只有 package 名称为 main 的包可以包含 main() 函数;
- 一个可执行程序有且仅有一个 main 包;
- 通过 import 关键字来导入其他非 main 包;
- 可以通过 import 关键字导入单个包,也可以同时导入多个包。