Skip to content

第一章

https://golang-china.github.io/gopl-zh/ch1/ch1-01.html

1.1

go run 和 go build

因为go是静态编译,所以不用担心在系统库更新的时候冲突,幸福感满满。

可以从 gopl.io 网站上下载源码

执行 go get gopl.io/ch1/helloworld 命令,就会从网上获取代码,并放到对应目录中(需要VCS)

一个包(package)由位于单个目录下的一个或多个 .go 源代码文件组成。

Go 的标准库提供了 100 多个包

main 是特殊包,定义了一个独立的可执行程序,而不是库。

Go 语言编译过程没有警告信息,多了、少了包都会报错。

换行符添加的位置会影响 Go 代码的正确解析

1.2

计算机:输入 -> 程序处理 -> 输出

os.Args 是 sring[] 的 slice。

go
package main

import (
    "fmt"
    "os"
)

func main() {
    var s, sep string
    for i := 1; i < len(os.Args); i++ {
        s += sep + os.Args[i]
        sep = " "
    }
    fmt.Println(s)
}

符号 := 是 短变量声明(short variable declaration)的一部分,可以简单的理解为自动推断类型。

1.3