C 中指针首选 NULL 或零
在 C 中,使用 NULL 或零 (0) 表示指针的主题一直是争论了一段时间的问题。虽然 C 的早期将 NULL 限制为 void* 指针,但后来它被重新定义为 0。然而,有些人仍然喜欢零。
那些喜欢零的人认为它本质上更符合逻辑和方便。他们认为,由于零可以用于真值比较,因此它比 NULL 更有意义,因为 NULL 需要显式比较。此外,他们质疑为现有值赋予名称 (NULL) 的价值。
另一方面,那些支持 NULL 的人引用了 C 的创建者 Bjarne Stroustrup 提供的指导。根据 Stroustrup 的说法,C 语言中 NULL 的定义是 0,这本质上是一种审美偏好。他建议避免使用宏,包括 NULL,而使用 0。
Stroustrup 还指出,在 C 11 中,引入了 nullptr 关键字作为空指针的正式名称。这提供了一种清晰一致的方式来在代码中表示空指针。
最终,零和 NULL 之间的选择可能取决于个人喜好。但是,重要的是要考虑社区的意见和语言创建者提供的指导。在清晰度和一致性至关重要的情况下,建议使用 nullptr。
以上是C 中指针的 NULL 或零:您应该选择哪一个?的详细内容。更多信息请关注PHP中文网其他相关文章!