const修饰指针包括三种:
1. 常量指针:const int * p;
顾名思义,常量的指针,所以指针指向可以变,然指向的数据是常量,不能变。记法:常量(const)指针(int *).
1 int main() 2 { 3 int a=10, b=20; 4 5 //常量指针,常量的指针 6 //指针的指向可以修改,但指向的数据(即常量)不可以修改 7 const int * p1 = &a; 8 // *p1 = b; //错误,修改指向的常量 9 p1 = &b; //正确,修改的是指针的指向 10 11 system("pause"); 12 return 0; 13 }
2. 指针常量:int * const p;
指针常量听名字也是“指针是常量”,因此指针的指向是不能改的,指向的数据可以修改。记法:指针(int *)常量(const).
1 int main() 2 { 3 int a=10, b=20; 4 5 //常量指针,常量的指针 6 //指针的指向可以修改,但指向的数据(即常量)不可以修改 7 int * const p1 = &a; 8 *p1 = b; //正确,修改指向的常量 9 // p1 = &b; //错误,修改的是指针的指向 10 11 system("pause"); 12 return 0; 13 }
3. const既修饰变量又修饰指针:const int * const p;
这样修饰的指针和指向的数据都是常量,不能修改。
原文链接: https://www.cnblogs.com/mzct123/p/12979263.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;
也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/351305
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!