只读指针变量和只读变量指针看着好像有点绕;
只读指针变量:意思是只读指针的变量 只读变量指针:只读变量的指针
本文的主角是const
关键字
如果我们开发的时候,定义了某个变量,不想让别人修改时,就可以使用“const
”关键字。
首先定义两个整型变量
int a = 10;
int b = 20;
先来看一下普通的指针变量:
我们定义一个普通的int类型的变量a,并初始化为10; 定义一个int类型的指针变量,指向变量a的地址。 那么打印出来p的值,就是a的值,10;
//普通的指针变量
int *p = &a;
printf("%d \n",*p);//10
//指向数值222
*p = 222;
printf("%d \n",*p);//222
//指向地址b
p = &b;
printf("%d \n",*p);//20
//只读指针变量
//这是一个const指针指向的int类型的变量
//const指针指向的整型变量
int *const cp1 = &a;
*cp1 = 2;//值可以修改
*cp1 = &b;
//cp1 = &b; //指针不能修改
//一个const指针指向的一个const整型的变量
int const *const ccp;
//*ccp = 22;//error 不能修改
//*ccp = &a;//error 不能修改
所以这个叫只读变量指针。