也许这是一个愚蠢的问题,但我真的无法得到它。出于某种原因,我的程序中的float值在赋值语句中被取整。如何防止在Objective-C中舍入浮点数?
下面是代码:
Float64 time,test;
for(Shot *sh in _arrayOfShots)
{
time = sh.bFrameTime;
// right here time variable gets value rounded up to 2 decimal places
// for example: if sh.bFrameTime = 81.919998 => time = 81.92
NSNumber *num = [NSNumber numberWithFloat:time];
test = [num floatValue];
[edgeTime addObject:num];
}
// this is my Shot object structure
@interface Shot : NSObject
{
int bFrame;
int eFrame;
Float64 bFrameTime;
}
如果有人知道如何解决这个问题,请给我提示!
谢谢!
你如何检查它是什么以及它是什么? –
我想你可以看到调试器中的值;) –
你在调试器中检查两个值? –