C语言空指针常量NULL

在C语言中,如果一个指针不指向任何数据,我们就称之为空指针,用NULL表示。
NULL 是一个标准规定的宏定义,用来表示空指针常量。
NULL 使 p 指向地址 0

【常数 0 是一个空指针常量,而 NULL 仅仅是它的一个别名。
NULL 可以确保是 0,但空(null)指针却不一定。
https://c.biancheng.net/view/364.html 】

定义一个指针都会给初始化一个有效地址来操作。
定义指针时,可将其初始化为NULL。

所有空指针常量null的数据地址都为0,因为操作系统不允许访问这个指针的数据。
大多数系统中都NULL宏定义为0,且将 0 作为不被使用的地址,所以运用 NULL作为0也不会毁坏数据。
但并非总是如此,也有系统会使用地址 0,但将 NULL 定义为其他值。所以不要把 NULL 和 0 等同起来。

野指针:简单来讲它就是指针指向的位置是不可知的(随机的、不正确的、没有明确限制的)。
指针被定义时如果没有指向,就表示指针没有被初始化,就表示是野指针。
野指针的错误来源就是指针定义了以后没有初始化,也没有赋值
(总之就是指针没有明确的指向一个可用的内存空间),然后去解引用。

void指针与空指针NULL不同:
NULL说明指针不指向任何数据,是“空的”;
而Void指针实实在在地指向一块内存,只是不知道这块内存中是什么类型的数据。

【1. int *p = NULL; 代表定义一个指向整型变量的指针p,然后p的值设为NULL,也就是设为0;用另一种方式说,就是对一个刚定义的指向整型变量的指针,赋初始值,让其指向0地址。
2. *p = NULL; 代表对一个由指针p指向的变量(什么类型,不知道),赋值为0,是将那个变量赋值为0。
https://www.cnblogs.com/haore147/p/3647174.html 】

单链表最后一个结点的指针域为NULL:
该指针域中没有保存任何信息
该指针域中没有指针

正确的理解:该指针域中的指针没有指向任何数据
(该指针域中的指针是一个空指针NULL;最后一个结点的指针为空NULL)。
由于该指针不指向任何结点,可以理解为它已经脱离了这个链表,和链表已经没有关系了。

相关推荐

  1. C语言指针常量NULL

    2024-03-25 20:14:02       37 阅读
  2. C语言】深入理解NULL指针

    2024-03-25 20:14:02       48 阅读
  3. C语言 指针导致内存溢出

    2024-03-25 20:14:02       67 阅读
  4. C语言 void 指针就是指针吗?它有什么作⽤?

    2024-03-25 20:14:02       31 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-25 20:14:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-25 20:14:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-25 20:14:02       87 阅读
  4. Python语言-面向对象

    2024-03-25 20:14:02       96 阅读

热门阅读

  1. python内置函数 T

    2024-03-25 20:14:02       42 阅读
  2. 约瑟夫问题---(蓝桥杯)

    2024-03-25 20:14:02       41 阅读
  3. Rancher(v2.6.3)——Rancher部署Nginx(单机版)

    2024-03-25 20:14:02       43 阅读
  4. Leetcode 28:找出字符串中第一个匹配项的下标

    2024-03-25 20:14:02       41 阅读
  5. k8s中,pod服务的状态和pod里面的容器的状态关系

    2024-03-25 20:14:02       47 阅读
  6. 使用免费ChatGPT提升工作效率

    2024-03-25 20:14:02       40 阅读
  7. 游戏客户端面经

    2024-03-25 20:14:02       46 阅读
  8. Python-字典的常用方法以及常用技巧-Dict

    2024-03-25 20:14:02       38 阅读
  9. 面试算法-99-单词拆分

    2024-03-25 20:14:02       40 阅读
  10. 第九章 Spring5 高级应用及核心原理(二)

    2024-03-25 20:14:02       32 阅读
  11. Python之装饰器-带参装饰器

    2024-03-25 20:14:02       41 阅读
  12. 查看nginx日志文件

    2024-03-25 20:14:02       45 阅读
  13. 3-9 枚举类代码 演示

    2024-03-25 20:14:02       39 阅读