我是Go的新手.我一直在寻找答案,我知道确实有一个我还没找到答案.
为了更好地解释我的问题,这是我的代码:
func main() {
...
inputs := new(Inputs)
fmt.Println("Input two numbers: ")
fmt.Scanln(&inputs.A)
fmt.Scanln(&inputs.B)
fmt.Println("Sum is:", inputs.A + inputs.B)
}
Run Code Online (Sandbox Code Playgroud)
这是我的结构:
type Inputs struct {
A, B int
}
Run Code Online (Sandbox Code Playgroud)
如果我输入'123'表示输入A而另一个'123'表示输入B,我将输出" Sum is:246 ".但是如果我错误地输入'123j',它将不再有效,因为A和B只接受int(s).
现在,如何从fmt.Scanln中抓住恐慌还是有办法吗?提前致谢.