【问题标题】:C code, using NULL versus 0, Best Practices [duplicate]C 代码,使用 NULL 与 0,最佳实践 [重复]
【发布时间】:2017-10-17 09:32:59
【问题描述】:

在 C 编码中,什么时候最好使用“NULL”而不是 0。 我在代码中注意到,只要有指针,就会使用 NULL。

【问题讨论】:

  • 副本的答案也提到了 NULL 和 0 之间的“差异”,因此它似乎适合作为副本。至少考虑到“最佳实践”是基于意见的,即不适合Stack Overflow

标签: c null


【解决方案1】:

初始化变量时应该使用:

int i=0;
float f=0.0f;
double = 0.0;
char c='\0'; 

在初始化指针的情况下,您应该在任何类型的指针中使用 NULL。这是由于指针类型变量的定义:它不保存一个值,它保存一个值的地址,或一组值(array/string -> int in case of int* (array), char in case char*(字符串)等)。因此,您使用 NULL 来表示它指向内存中的任何内容。

【讨论】:

  • 指针仍然保存值。在NULL 的情况下,它是类型为指针的 0 的值。
  • @JonathanWood 所说的重要说明:NULL(或(T*)0)在内存中不一定全为 0。
猜你喜欢
  • 1970-01-01
  • 2018-08-05
  • 1970-01-01
  • 2010-11-11
  • 2015-12-29
  • 1970-01-01
  • 2013-06-23
  • 2012-05-30
  • 2011-10-20
相关资源
最近更新 更多