【问题标题】:Stuck on a arithmetic operation error卡在算术运算错误上
【发布时间】:2017-02-10 23:50:19
【问题描述】:

我在变量labels04 中实例化UITextField 的数组。我循环做一些计算。计算后,我尝试使用数组的索引来进一步计算我的算法,但得到一个错误的指令错误。

    @IBOutlet var labels04: [UITextField]!
    var gpacalc1:Int = 0
    var gpacalcDivide:Int = 0
    var convertIndexGPA:Int = 0

上线

gpacalcDivide = gpacalculate / convertIndexGPA

我得到一个 THREAD1:EXC_BAD_INSTRUCTION(CODE=EXC_I386_INVOP, subcode 0x0)

    buttonContext
    {
    for label:UITextField in labels04 {


     //calculations ... 

    gpacalculate = gpacalculate + gpacalc!
    convertIndexGPA = labels04.index(of: label)!
    gpacalcDivide = gpacalculate / convertIndexGPA
    gpaTotalCalc.text! = "GPA: \(gpacalcDivide)"
    }
    }

我相信这与使用 labels04.index(of: label) 有关!命令。虽然它在控制台中打印为整数,但是当我尝试将该值用于算术运算时,我会收到错误指令错误提示。

有办法解决吗?谢谢

【问题讨论】:

    标签: ios swift


    【解决方案1】:

    在 for 循环的第一次迭代中,labels04.index(of: label)! 应该等于 0(即第一个索引),所以在下一行 -- gpacalcDivide = gpacalculate / convertIndexGPA -- 你将被除以 0,这会导致错误.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-26
      • 1970-01-01
      • 2021-02-13
      • 1970-01-01
      • 2016-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多