来源:https://github.com/adonovan/gopl.io/blob/master/ch1/echo1/main.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)
}
以下是The Go Programming Language一书中的echo程序。它基本上与您在运行程序后在控制台中键入的内容相呼应。
sep
字符串变量有什么意义?
该程序似乎运行得非常好,没有并以这种方式结合。
s += os.Args[i]
代替s += sep + os.Args[i]
答案 0 :(得分:3)
sep确保单词之间有空格而不是开头或结尾。
这就是为什么它是变量
答案 1 :(得分:1)
在命令行(终端或CMD.exe)中,cd
到包含此文件的文件夹并执行:
go run main.go a b c
输出将是:
a b c
然后,从代码中删除sep
变量并再次从命令行运行它。新输出将是:
ABC
因此,sep
变量用作分隔符 - 它在应用程序启动时传递给main函数的两个命令行参数之间添加空格