C++ 指针基础
指针
- 指针具有强大的能力,其本质是协助程序员完成内存的直接操作
- 指针: 特定类型数据在内存中的存储地址,即内存地址
- 指针只是一个逻辑概念,其实际应用是:指针变量
- 语法
- * 符号有两种含义:
- 声明时:*p ,表示变量p,是指针变量,存的是内存地址
- 使用时:*p, 表示取指针p执行内存区域的数据
- &符号表示取变量内存地址,是一个取内存地址的单目操作符
野指针和空指针
- 野指针: 被声明单未初始化(赋值)的指针。这个指针会指向随机的内存空间,可能导致未知问题。
- 为避免野指针,应养成良好的编程习惯,及时初始化,或将指针置为空指针
- int *p = NULL;
- int * p = nullptr;
- nullptr 是C++ 11标准引入的关键字,表示指针为空