本文主要是介绍C语言:const修饰指针,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
const int *p1;
int const *p2;
int *const p3;
const int *const p4;
就近原则:const靠近谁,修饰的就是谁。
常量指针【指向地址可以修改】
p1,p2相同。const靠近*,所以修饰的是*p,指针p可以修改,但是p指向内存不能修改;
- 指针p 指向内存可以修改
p2++;
p2 = # - 但是不能通过p修改内存中的值
*p2 = 50;// ERROR
指针常量【指向地址不可以修改】
p3中,const修饰的是指针p,指针p不可以修改,但p指向的内存可以修改;
- 因为指向不可以改变,所以需要初始化
p3++; // ERROR
p3 = # // ERROR - 指针p 指向内存可以修改
*p3 = 50;
常量指针常量
p4中,指针p不可以修改,p指向内存也不可以修改
- 因为指向不可以改变, 所以需要初始化
p4++; // ERROR
p4 = # // ERROR - 因为指向内存不可以改变,所以是常量
*p4 = 50; // ERROR
这篇关于C语言:const修饰指针的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!