Go
Konsol I / O
Sök…
Läs inmatning från konsolen
Använda scanf
Scanf skannar text läst från standardinmatning och lagrar på varandra följande rymdseparerade värden i på varandra följande argument, bestämd av formatet. Det returnerar antalet skannade objekt. Om det är mindre än antalet argument kommer fel att rapportera varför. Nya linjer i ingången måste matcha nya linjer i formatet. Det ena undantaget: verbet% c skannar alltid nästa runa i ingången, även om det är ett mellanslag (eller flik etc.) eller ny linje.
# Read integer
var i int
fmt.Scanf("%d", &i)
# Read string
var str string
fmt.Scanf("%s", &str)
Använd scan
Skanning skannar text läst från standardinmatning och lagrar på varandra följande rymdseparerade värden i på varandra följande argument. Nylinjer räknas som rymd. Det returnerar antalet skannade objekt. Om det är mindre än antalet argument kommer fel att rapportera varför.
# Read integer
var i int
fmt.Scan(&i)
# Read string
var str string
fmt.Scan(&str)
Använda scanln
Sscanln liknar Sscan, men slutar skanna på en ny linje och efter den sista artikeln måste det finnas en ny linje eller EOF.
# Read string
var input string
fmt.Scanln(&input)
Använda 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())
}