package main
import "fmt"
func main() {
var inStr string
var inStr2 string
fmt.Printf("Input? ")
fmt.Scanf("%s", &inStr)
fmt.Printf("\nOutput: %s\n", inStr)
fmt.Printf("Input2? ")
fmt.Scanf("%s", &inStr2)
fmt.Printf("\nOutput: %s\n", inStr2)
}
这是输出
Input? 2
Output: 2
Input2?
Output:
Success: process exited with code 0.
如您所见,它不允许我输入input2;它退出了程序。
答案 0 :(得分:2)
这些症状可能发生在Windows上,其中行可以以" \r\n
"而不是" \n
"。尝试向\n
格式添加显式换行符(" Scanf
")。例如,"%s\n"
,
package main
import "fmt"
func main() {
var inStr string
var inStr2 string
fmt.Printf("Input? ")
fmt.Scanf("%s\n", &inStr)
fmt.Printf("\nOutput: %s\n", inStr)
fmt.Printf("Input2? ")
fmt.Scanf("%s\n", &inStr2)
fmt.Printf("\nOutput: %s\n", inStr2)
}
输出:
Input? 1
Output: 1
Input2? 2
Output: 2