【问题标题】:difference between nil and NULL [duplicate]nil和NULL之间的区别[重复]
【发布时间】:2012-08-27 12:28:51
【问题描述】:

可能重复:
NULL vs nil in Objective-C
Objective-C: What's the difference between NULL, nil and @“”?

我有一个简单的问题,即我的目标变量中包含 NULL 值。它只需在 if 条件中输入。我必须检查变量目标长度是否大于零并且没有空值,然后输入条件。

当我使用 NULL 或 nil 进行比较时

谢谢

【问题讨论】:

  • @Brad Larson。首先你是我最喜欢的程序员。第二件事就是这样。我在谷歌搜索 1 小时后问了这个问题。我在这里问这个问题是为了解决我的问题并理解为什么控制进入我的 if 条件的概念。用户不可能看到与任何主题相关的所有问题。我只想说,我不是为了在堆栈溢出中获得积分而抄袭任何人。谢谢。
  • 您的问题没有任何问题,之前只是以几种不同的方式提出过问题,所以我想将人们引向原始问题。这有助于将好的答案保存在一个地方,供搜索相同内容的人使用。这里有一个复制的答案,这让我意识到这是在问类似于这两个问题的问题。
  • @BradLarson 感谢您的回复。你说的对。 :)

标签: iphone ios


【解决方案1】:

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

【讨论】:

  • 感谢您的快速回复。为什么我的控件进入 if 条件?
  • 您的字符串包含字符“(null)”。我在回答中添加了更多细节。
【解决方案2】:

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

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

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

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

【讨论】:

    【解决方案3】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-22
      • 1970-01-01
      • 2012-06-17
      • 1970-01-01
      • 2015-01-23
      • 1970-01-01
      相关资源
      最近更新 更多