c++ - NULL 和 nullptr 是否都指向同一个地址或 NULL 不指向任何地方?(我在很多地方都看到 nullptr 指向零地址)
问题描述
NULL 和 nullptr 是否都指向同一个地址或 NULL 不指向任何地方?(我在很多地方都看到 nullptr 指向内存不可访问的零地址)
解决方案
澄清一些术语可能很有用。一个指针指向一个对象。指针的值是地址值。不指向对象的指针有一个特殊的地址值。我们称这样的指针为“空指针”。当您将NULL
ornullptr
值分配给指针时,它变为空指针。
由于所有空指针比较相等,static_cast<void*>(NULL) == static_cast<void>(nullptr)
.
推荐阅读
- javascript - 我的 webpack 配置有什么问题?- 网络工作者没有加载splitChunks
- typescript - 在 ts-morph 中生成粗箭头函数属性赋值
- javascript - 在 JavaScript 中合并对象和子对象(不完全覆盖子对象)
- email - 电子邮件供应商使用 cypress 实现自动化
- laravel - 在 laravel 中更新认证系统的记录,没有错误消息
- c++ - 使用索引号,将该索引(一个字符)附加到 char 数组
- sql - 如何在 Firebird 中对数字进行四舍五入?
- azure - CORS - 在 Azure API 管理上启用了本地主机源,但仍然收到错误
- javascript - javascript中两个数组数字的平方
- r - 从向量中提取重复 n 次 (R) 的元素