const修饰基本数据类型
const int num = 10;
一般情况下来说,被const修饰的变量具备一定程度上的不可变性【只能取值不能修改】
const修饰数组:const int arr[4]={10,20,30,40};
,数组的元素的值不能修改,数组变量已经是const的指针了,这里的const表明数组的每个单元都是const int,所以必须通过初始化进行赋值
const修饰指针:
1)
2)int const * p1=#
效果同上
3)int * const p1=#
p1的值不能修改,但是可以通过p1去修改p1指向的变量的值
4)int const * const p1=#
既不能修改p1的值,也不能通过p1去修改p1指向的变量的值
当函数的参数是一个指针的时候,这个时候函数的内部是有可能会修改实参变量的值,所以要加一个const: