常量指针和指针常量的理解

来源:6-4 const与指针

慕神816625

2021-08-15

1、常量指针的指向可以修改,但指针指向的值不能修改;
举例:
const char* p或char const * p;
2、指针常量的指向不能修改,但指针指向的值可以修改;
举例:
char* const p;
3、const既修饰指针,又修饰常量,则指针的指向不能修改,同时指针指向的值也不能修改
举例:
const char* const p;

写回答

1回答

quickzhao

2021-08-15

其实不太喜欢中文表达这些概念。我这么说你看好理解不:const修饰内容时你先向左侧看,左侧最近的不可修改;比如 char const * p 和 char * const p; 前者修改左侧最近是char,所以前者的char 不可改变,后者左侧最近是* ,所以后者的指针不可改变;如果左侧没有内容,则看最近的右侧内容,比如 const char* 则修饰的是char,char不可改变; 而const char * const p;  第一个const 修饰的是char ,第二个const修饰* ,内容和指针都不可变。不知道这样的规则你觉得好掌握不。

4
0

重学C++ ,重构你的C++知识体系

一部大片,一段历史,构建C++知识框架的同时重塑你的编程思维

3884 学习 · 1103 问题

查看课程