gpt4 book ai didi

ios - 知道数字的最高位数

转载 作者:行者123 更新时间:2023-12-01 19:59:40 25 4
gpt4 key购买 nike

我正在用swift 3在Xcode 8中做一个应用程序,它是一个基本转换器,输入值是通过按钮设置的:

@IBAction func inputButton(_ sender: UIButton)
{
currentNumber = currentNumber * 10 + (the number I want to add)
labelText.text = "\(currentNumber)"
}

它工作正常,但是当我输入大约10个数字时,应用程序崩溃了。在我为“currentnumber”设置新值的行之后,Xcode向我显示了这一点:

线程1:EXC_BAD_INSTRUCTION(代码= EXC_INPOV,子代码= 0x0)

最佳答案

幸运的是,溢出是Swift中的错误。

您可以通过在实际执行计算之前检查值是否超过Int.max来防止此问题。

以下是一些入门代码:

guard let inputNumber = Int(inputString) else {
labelText.text = "input not a number or out of range"
return
}

guard currentNumber < (Int.max - inputNumber) / 10 else {
labelText.text = "overflow"
return
}

currentNumber = currentNumber * 10 + inputNumber
labelText.text = "\(currentNumber)"

关于ios - 知道数字的最高位数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40510860/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com