NSTimeInterval expirationTime = (secondsSinceUnixEpoch*1000)+120000;
expirationTime = ceil(expirationTime/2);
int expirationInt = (int)expirationTime;
NSLog(@"%d", expirationInt);

日志输出总是负的,即使在我把它转换成int之前它是正的。。。我试着把它乘以-1,让它再次变为正值,结果却一直是负值!我完全困惑了。。。。对C不太了解,我只是在做傻事吗??

最佳答案

在我看来,这个数字太大了,无法放入(secondsSinceUnixEpoch*1000)+120000。可能是整数溢出并变为负数。

关于ios - 为什么将我的float转换为int会使数字变为负数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19965531/

10-11 20:55