從控制檯讀取輸入
使用 scanf
Scanf 掃描從標準輸入讀取的文字,將連續的空格分隔值儲存到由格式確定的連續引數中。它返回成功掃描的專案數。如果這小於引數的數量,則錯誤將報告原因。輸入中的換行符必須與格式中的換行符匹配。一個例外:動詞%c 始終掃描輸入中的下一個符文,即使它是空格(或製表符等)或換行符。
# Read integer
var i int
fmt.Scanf("%d", &i)
# Read string
var str string
fmt.Scanf("%s", &str)
使用 scan
掃描掃描從標準輸入讀取的文字,將連續的空格分隔值儲存到連續的引數中。換行計為空格。它返回成功掃描的專案數。如果這小於引數的數量,則錯誤將報告原因。
# Read integer
var i int
fmt.Scan(&i)
# Read string
var str string
fmt.Scan(&str)
使用 scanln
Sscanln 與 Sscan 類似,但在新行停止掃描,在最終專案之後必須有換行符或 EOF。
# Read string
var input string
fmt.Scanln(&input)
使用 bufio
# Read using Reader
reader := bufio.NewReader(os.Stdin)
text, err := reader.ReadString('\n')
# Read using Scanner
scanner := bufio.NewScanner(os.Stdin)
for scanner.Scan() {
fmt.Println(scanner.Text())
}