https://www.kancloud.cn/kancloud/the-way-to-go/72679
例題
func getMsg() (msg string) {
reader := bufio.NewReader(os.Stdin)
if err != nil {
fmt.Println(err.Error())
}
return
}
簡要概括:
reader 是一個指針,因爲bufio.NewReader() 構造函數的接口是 func NewReader(rd io.Reader) *Reader
(*Reader,從這裏可以看出)
1. reader := bufio.NewReader(os.Stdin) 的時候創建了一個讀取器
2.msg, err := reader.ReadString('\n')
ReadString(delim
byte)是一個方法。
讀取到delim字符後結束,並且返回error=nil給err。
所以msg得到的是os.Stdin輸入的字符串加上('\n')換行。(切記)
最後返回msg,對應函數名稱,獲得了Msg+('\n')的信息。