Swift 快速添加:执行被中断,原因:EXC_BAD_指令(代码=EXC_l386_INVOP,子代码=0x0)

Swift 快速添加:执行被中断,原因:EXC_BAD_指令(代码=EXC_l386_INVOP,子代码=0x0),swift,swift2,swift-playground,Swift,Swift2,Swift Playground,我试图在Swift中添加两个数字并打印其总和 import Foundation func solveMefirst(firstNo: Int , secondNo: Int) -> Int { return firstNo + secondNo } let num1 = readLine() let num2 = readLine() var IntNum1 = Int(num1!) ** Execution was interrupted, reason: EXC_BAD

我试图在Swift中添加两个数字并打印其总和

import Foundation

func solveMefirst(firstNo: Int , secondNo: Int) -> Int {
    return firstNo + secondNo
}

let num1 = readLine()
let num2 = readLine()

var IntNum1 = Int(num1!) ** Execution was interrupted, reason: EXC_BAD_INSTRUCTION (Code=EXC_l386_INVOP, subcode=0x0). **
var IntNum2 = Int(num2!)

let sum = solveMefirst(IntNum1!, secondNo: IntNum2!)
print(sum)
但不幸的是,这个错误出现了,并在操场上停止了执行

Execution was interrupted, reason: EXC_BAD_INSTRUCTION (Code=EXC_l386_INVOP, subcode=0x0).

不明白,这是怎么回事

更新

另外,请解释如何在操场上运行此命令行程序


如何从游乐场获取输入???。

它崩溃,因为您强制输入一个nil值,这会导致错误;
正如您可以在左侧阅读的
num1=nil
它不知道它应该是什么,但有错误。因为当你试图强制一个值到
num1
(这就是“!”的作用)它崩溃了,因为
num1
没有值。

我使用命令行运行它。我认为您使用的是游戏场,但您没有为num1和num2获取输入。 运行项目后,输入数字1,然后按enter键。然后输入数字2并按enter键。它会给你想要的结果。你的代码运行良好。我在这里运行它


num1
num2
是零,你可以在输出中清楚地看到-当你打开它们时会发生什么?你应该阅读,这会有很大帮助。@EricD。你能解释一下如何在操场上输入STDIN吗积极的建议总是很感激的:)你能告诉我如何在操场上运行这个代码吗?如果你想从用户那里获取输入,最好在Xcode中打开基于控制台的应用程序。此外,Raywenderlich教程中提到操场不允许用户输入:是的,也许这就是错误显示EXC_BAD_指令的原因