摘要:介绍常指针,指针常量和常数组的本质和区别。
常指针
- 指针地址是
const
常量。 - 声明形式:
int * const p;
p
是const
常量。
指针常量
- 指针地址所指的变量是
const
常量 - 声明形式:
const int* p;
或者int const * p;
*p
是const
常量。
两者声明的判断标志
const
在*
的前面还是后面。
const
指针作为函数参数
- 总是可以将一个非
const
的值转换成const
的,即将普通指针转换成指针常量。 - 传递参数类型比地址大时候,既能用较少的字节数传递值给函数,减少性能开销。
- 避免函数对外面变量的修改,确保数据安全。
cosnt
数组
- 定义形式:
const int a[] = {1,2,3,4,5,6}
- 数组变量本质上是
const
指针,再加上const
修饰表明数组的每个元素都是const int
。 - 由于每个元素都是
cosnt int
,所以需要声明时进行初始化赋值,初始化后不能赋值更新。
2021.10.8 第一次编辑