想要“30 of month”却得到“30”
package main
import "fmt"
func main() {
var s string
fmt.Scanln(&s)
fmt.Println(s)
return
}
$ go run test.go
31 of month
31
Scanln is similar to Scan, but stops scanning at a newline and after the final item there must be a newline or EOF.
最佳答案
fmt Scan 系列扫描以空格分隔的标记。
package main
import (
"fmt"
)
func main() {
var s1 string
var s2 string
fmt.Scanln(&s1,&s2)
fmt.Println(s1)
fmt.Println(s2)
return
}
你可以试试bufio扫描
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
scanner := bufio.NewScanner(os.Stdin)
for scanner.Scan() {
s := scanner.Text()
fmt.Println(s)
}
if err := scanner.Err(); err != nil {
os.Exit(1)
}
}
关于string - 如何使用 fmt.scanln 从以空格分隔的字符串中读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34647039/