指针变量和指针常量有什么区别,如何辨别?
来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/07/16 13:20:31
指针变量和指针常量有什么区别,如何辨别?
![指针变量和指针常量有什么区别,如何辨别?](/uploads/image/z/8481608-8-8.jpg?t=%E6%8C%87%E9%92%88%E5%8F%98%E9%87%8F%E5%92%8C%E6%8C%87%E9%92%88%E5%B8%B8%E9%87%8F%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB%2C%E5%A6%82%E4%BD%95%E8%BE%A8%E5%88%AB%3F)
int *p1; // 定义一个指针变量,可以改变指针所指向的内存位置,例子:
int *p1; int i=1,j=2; p1 = &i; p1= &j;
int i=1;
int* const p2 = &i; // 定义一个指针常量,const指针必须在定义时初始化.
可以通过*p2改变i的值,但是不能把p2指向其它位置了.如:
int i=1,j=2;
int *const p2=&i; // ok
*p2 = 3; // ok, i =3;
p2 = &j; // error ,不能修改p2的值.
int *p1; int i=1,j=2; p1 = &i; p1= &j;
int i=1;
int* const p2 = &i; // 定义一个指针常量,const指针必须在定义时初始化.
可以通过*p2改变i的值,但是不能把p2指向其它位置了.如:
int i=1,j=2;
int *const p2=&i; // ok
*p2 = 3; // ok, i =3;
p2 = &j; // error ,不能修改p2的值.