将 int64_t 转换为 NSInteger
如何在 Objective-C 中将 int64_t 转换为 NSInteger ?
这个方法返回一个 int64_t* 的分数,我需要将它转换为 NSInteger:
[OFHighScoreService getPreviousHighScoreLocal:score forLeaderboard:leaderboardId];
谢谢。
How can i convert int64_t to NSInteger in Objective-C ?
This method returns into score an int64_t* and I need to convert it to NSInteger:
[OFHighScoreService getPreviousHighScoreLocal:score forLeaderboard:leaderboardId];
Thank you.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
问题出在我的代码上:
要工作它应该是:
使用这段代码我显然可以做到:
谢谢。
The problem was on my code:
To work it should be:
And with this code i can obviously do:
Thank you.
它们应该在 64 位计算机上直接兼容(或者如果您使用
NS_BUILD_32_LIKE_64
进行构建):文档 表明
NSInteger
看起来像这样:因此,在 32 位计算机上,您可能需要处理一些截断问题。在我的机器上,这个语句:
给出了这个输出:
They should be directly compatible on a 64-bit machine (or if you build with
NS_BUILD_32_LIKE_64
):The documentation indicates that the definition of
NSInteger
looks like this:So on a 32-bit machine you might have some truncation issues to deal with. On my machine here, this statement:
gives this output: