编译型语言

<font style="color:#333333;">Go</font>是一门编译型语言,<font style="color:#333333;">Go</font>语言的工具链将源代码及其依赖转换成计算机的机器指令(译注:静态编译)

  1. package main
  2. import "fmt"
  3. func main() {
  4. fmt.Println("Hello, 世界")
  5. }

go run

<font style="color:#333333;">Go</font>语言提供的工具都通过一个单独的命令go调用,go命令有一系列子命令。最简单的一个子命令就是<font style="color:#333333;">run</font>。这个命令编译一个或多个以 <font style="color:#333333;">.go</font> 结尾的源文件,链接库文件,并运行最终生成的可执行文件。(本书使用$表示命令行提示符。)

  1. $ go run helloworld.go

go build

如果不只是一次性实验,你肯定希望能够编译这个程序,保存编译结果以备将来之用。可以用build子命令:

  1. $ go build helloworld.go

这个命令生成一个名为helloworld的可执行的二进制文件(译注:Windows系统下生成的可执行文件是helloworld.exe,增加了.exe后缀名),之后你可以随时运行它(译注:在Windows系统下在命令行直接输入helloworld.exe命令运行),不需任何处理(译注:因为静态编译,所以不用担心在系统库更新的时候冲突,幸福感满满)。

  1. $ ./helloworld
  2. Hello, 世界

分号

Go语言不需要在语句或者声明的末尾添加分号,除非一行上有多条语句。实际上,编译器会主动把特定符号后的换行符转换为分号,因此换行符添加的位置会影响Go代码的正确解析