Iphone nil和NULL之间的差异

Iphone nil和NULL之间的差异,iphone,ios,Iphone,Ios,可能重复: 我所有的问题都很简单,我的目标变量中有空值。它只需在if条件下输入。我必须检查,如果可变目标长度大于零,并且没有空值,则输入条件 当我在比较中使用NULL或nil时 谢谢 它们是一样的。但是,通常使用nil与objc对象进行比较,并且当分配给objc对象时。在这种情况下,似乎有一个值为“(null)”的字符串。当您试图将内容附加或格式化到本身为空的字符串中时,可能会发生这种情况。它是一个有效字符串,不为NULL或nil,长度为8个字符。所以它进入了你的循环 在objective-

可能重复:

我所有的问题都很简单,我的目标变量中有空值。它只需在if条件下输入。我必须检查,如果可变目标长度大于零,并且没有空值,则输入条件

当我在比较中使用NULL或nil时

谢谢


它们是一样的。但是,通常使用
nil
与objc对象进行比较,并且当分配给objc对象时。

在这种情况下,似乎有一个值为“(null)”的字符串。当您试图将内容附加或格式化到本身为空的字符串中时,可能会发生这种情况。它是一个有效字符串,不为NULL或nil,长度为8个字符。所以它进入了你的循环


在objective-c中,NULL和nil是同一事物(数字0)。但是样式指南会告诉您,指针使用NULL,从NSObject派生的类使用nil。

假设我们讨论的是Objective-C:

nil
(全小写)是指向Objective-C对象的空指针

Nil
(大写)是指向Objective-C类的空指针


NULL
(所有大写)是指向任何其他内容的空指针。

感谢您的快速回复。为什么我的控件输入if条件?您的字符串包含字符“(null)”。“我在回答中添加了更多细节。”布拉德·拉森。第一个秋天你是我最喜欢的程序员。第二件事是。我在谷歌搜索了一个小时后问了这个问题。我在这里问这个问题是为了解决我的问题,理解为什么控制会进入我的if状态。用户不可能看到与任何主题相关的所有问题。我只是想说,我并不是在复制任何人来获得堆栈溢出点。谢谢。你的问题没有什么问题,只是以前有人用几种不同的方式问过,所以我想让大家看看最初的问题。这有助于将好答案保存在一个地方,供搜索相同内容的人使用。这里有一个复制的答案,这提醒了我,这是在问一些类似于这两个问题的问题。@BradLarson谢谢你的回答。你说得对