为什么要使用指针,指针定义, 指针的初始化访问,空指针和坏指针,指针的算术运算

Posted Respect@

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么要使用指针,指针定义, 指针的初始化访问,空指针和坏指针,指针的算术运算相关的知识,希望对你有一定的参考价值。

为什么要使用指针

  1.  函数的值传递,无法通过调用函数,来修改函数的实参
  2.  被调用函数需要提供更多的“返回值”给调用函数
  3.  减少值传递时带来的额外开销,提高代码执行效率

指针定义

在这里插入图片描述
int p; // int p1, p2;
或者int
p; // int
p1,p2; //p1 是指针, p2 只是整形变量
或者int * p;
或者int
p;//不建议

指针的初始化

在这里插入图片描述

注意: 32 位系统中,int 整数占 4 个字节,指针同样占 4 个字节
64 位系统中,int 整数占 4 个字节,指针同样占 8 个字节

访问指针

在这里插入图片描述

空指针

  1. 什么是空指针? 空指针,就是值为 0 的指针。(任何程序数据都不会存储在地址为 0 的内存块中,它是被操作系 统预留的内存块。)

  2. int *p = 0;

  3. 或者int *p = NULL; //强烈推荐

  4. 空指针的使用 1)指针初始化为空指针 int *select = NULL; 目的就是,避免访问非法数据。 2)指针不再使用时,可以设置为空指针 int *select = &xiao_long_lv;
    select = NULL;

坏指针

int *select; //没有初始化
情形一
printf(“选择的房间是: %d\\n”, *select);

情形二
select = 100;
printf(“选择的房间是: %d\\n”, *select);

指针的算术运算

在这里插入图片描述
在这里插入图片描述

以上是关于为什么要使用指针,指针定义, 指针的初始化访问,空指针和坏指针,指针的算术运算的主要内容,如果未能解决你的问题,请参考以下文章

指针变量初始化为NULL啥意思?

空指针是啥意思

C语言 野指针和空指针

C语言 野指针和空指针

C语言指针定义

指针初始化时设置为0和NULL的区别?求高手解答~