指针常量:指向常量的指针,p所指向的内存地址所对应的值,是const,因此不可修改。但指针所指向的内存地址是可以修改的,因为指针本身并不是const类型。
常量指针:表示const修改的指针
因为const修饰的是指针p,也就是说:指针所指向的内存地址是const,不可修改。但p所指向内存地址所对应的值是可以修改的,因为其并不是const类型。
指向常量的指针常量: const同时修饰类型和指针。只读
因为const同时修饰这类型和指针,也就是说:指针所指向的内存地址不可修改同时内存地址所对应的值也不可修改。
在C/C++中关键字const用来定义一个只读的变量或者对象,有如下优点:
(1)便于类型检查,如函数的函数 fun(const int a) a的值不允许变,这样便于保护实参。
(2)功能类似与宏定义,方便参数的修改和调整。如 const int max = 100;
(3)节省空间,如果再定义a = max,b=max。。。就不用在为max分配空间了,而用宏定义的话就一直进行宏替换并为变量分配空间
(4)为函数重载提供参考
原文链接:https://blog.csdn.net/kingscoming/article/details/78845461