gpt4 book ai didi

Cast int 在 64 位架构上工作

转载 作者:太空宇宙 更新时间:2023-11-04 08:42:46 25 4
gpt4 key购买 nike

当我运行我的 XCODE 项目时出现以下错误,这似乎是因为以 64 位运行我的项目。我可以将其更改为 32 位,但关于如何转换以下代码以使其在 64 位架构上运行的任何想法。

int row = [indexPath row];
(implicit conversion loses integer precision: NSInteger (aka long) to int

有什么想法吗?谢谢

最佳答案

注意它说的是“隐式转换”。您可以使用

显式进行转换,从而消除警告
int row = (int)[indexPath row];

或者,如果 int 可能太小,

long row = (long)[indexPath row]; // here the cast isn't even needed because widening is ok

或者你可以使 row 的类型符合你设置它的值的类型(如果这是你唯一这样做的地方)

NSInteger row = [indexPath row];

如果您更改 row 的类型,然后以类型不安全的方式使用它,例如 printf 的参数,请小心……确保 printf 格式与其参数的类型匹配。

关于Cast int 在 64 位架构上工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22906750/

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