练习1.1:修改echo程序输出os.Args[0],即命令的名字。
package main
import (
"fmt"
"os"
)
func main(){
if len(os.Args) > 0 {
fmt.Println(os.Args[0])
}
}
运行:go run main.go args args2
输出:
/var/folders/w1/vvlknvm10l3b8391hzltdh0h0000gn/T/go-build287366431/b001/exe/main
练习1.2:修改echo程序,输出参数的索引和值,每行一个。
package main
import (
"fmt"
"os"
)
func main(){
for k,value := range os.Args{
fmt.Println(k)
fmt.Println(value)
}
}
运行:go run main.go args args2
输出:
0
/var/folders/w1/vvlknvm10l3b8391hzltdh0h0000gn/T/go-build005548217/b001/exe/main
1
args=1
2
args2
练习1.3:尝试测量可能低效的程序和使用strings.Join的程序在执行时间上的差异。(1.6节有time包,11.4节展示如何撰写系统性的性能评估测试