gpt4 book ai didi

swift - EXC_BAD_INSTRUCTION 仅在 iPhone 5 模拟器中

转载 作者:搜寻专家 更新时间:2023-11-01 07:18:04 24 4
gpt4 key购买 nike

在 iPhone 5 模拟器上运行我的代码会抛出图中所示的异常。在任何其他模拟器上运行代码都很好。

在这行不起眼的代码中,我找不到哪里出错了。还有其他人有这个问题吗?

Exception shown in XCode

最佳答案

NSInteger(在 Swift 中是 Int 的类型别名)是一个 32 位的32 位平台(如 iPhone 5)上的整数。结果

NSInteger(NSDate().timeIntervalSince1970) * 1000

1480106653342(此刻)并且不适合范围 -2^31 ... 2^31-1 的 32 位(有符号)整数。因此 Swift 中止执行。 (Swift 不会“截断”整数算术运算的结果,因为它是在一些其他编程语言,除非您专门使用“溢出”运算符,如 &*。)

您可以使用 Int64所有平台上进行 64 位计算:

Int64(NSDate().timeIntervalSince1970 * 1000)

在你的例子中,如果需要一个字符串:

let lastLogin = String(Int64(NSDate().timeIntervalSince1970 * 1000))

关于swift - EXC_BAD_INSTRUCTION 仅在 iPhone 5 模拟器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40811559/

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