指针和整数错误之间的比较

时间:2010-05-03 15:25:31

标签: iphone cocoa cocoa-touch

我的Objective-C方法中有以下一行代码:

if (self.rule.sunday == YES) { do some stuff... }

该行产生以下编译器警告:

Comparison between pointer and integer

这只是一个警告,所以它没有生命危险,但它让我疯了。显然,我缺少一些关于整数,指针和/或布尔值的基本概念。有人可以赐教我这样我可以修改我的代码吗?

像往常一样,提前感谢您的帮助。

更新:作为参考,更正后的代码如下所示:

if ([self.rule.sunday boolValue] == YES) { do some stuf... }

1 个答案:

答案 0 :(得分:2)

self.rule.sunday正在返回一个对象引用。 YES不是对象,而是unsigned char。所以你要将对象引用(即内存地址)与1进行比较。当然它会抱怨你。