在我的应用程序中,我正在检查CGPoint的x值是否在if语句中不同于零。但是,尽管该点的x值为零,但该应用仍会进入if语句。这是代码:
CGPoint previousPoint;
if (previousPoint.x != 0) {
NSLog(@"YES");
CGContextMoveToPoint(context, previousPoint.x, previousPoint.y);
CGContextAddLineToPoint(context, 150+(40*[[[self.grades objectAtIndex:i] semesterGPA] doubleValue]), 59+(40*(i+1)));
}
}
运行应用程序后,虽然不应该打印“YES”(因为以前的积分是(0.000000,0.000000)),我该如何解决呢?
最佳答案
确保previousPoint
以一定的值启动!并比较float与float而不是int。
CGPoint previousPoint;
if (previousPoint.x != 0.0f) {
NSLog(@"YES");
CGContextMoveToPoint(context, previousPoint.x, previousPoint.y);
CGContextAddLineToPoint(context, 150+(40*[[[self.grades objectAtIndex:i] semesterGPA] doubleValue]), 59+(40*(i+1)));
}
}
关于ios - CGFloat比较错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15587492/