首页 > 代码库 > 用const修饰指针
用const修饰指针
其实很简单,无奈老是记不住,那就单独写出来吧!
a.指针本身不可变,即不可指向其他对象:
char* const pContent = “abcde”;
pContent[2] = ‘f’; //合法
pContent = “abfde”; //不合法
b.指针所指向的对象不可变,即指针不可以修改所指向的对象
const char *pContent = “abcde”; //或者
char const *pContent = “abcde”; //上下两种情况相同
pContent[2] = ‘f’; //不合法
pContent = “abfde”; //合法
c.两者都不可变
const char* const pContent; //指向const对象的const指针
pContent[2] = ‘f’; //不合法
pContent = “abfde”; //不合法
识别const到底是修饰指针本身还是指针所指的对象,还有一个较为简便的方法,也就是沿着*号划一条竖线,把声明语句从*号处分成左右两部分:
如果const位于*的左侧,则const修饰指针所指向的对象,即指针指向对象不可变;
如果const位于*的右侧,则const修饰指针本身,即指针本身不可指向其他对象。
用const修饰指针
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。