课程
/后端开发
/C++
/C++远征之离港篇
const int count=3;
const int *p=&count;
和
const int *const p=&count;
有什么区别吗?
2017-03-18
源自:C++远征之离港篇 3-4
正在回答
有区别
const int *p 中const修饰的是指针*p,即*p不能改变,但是p可以被改变。
而const int * const p中,第一个const 修饰的是*p,第二个const 修饰的是p,所以*p和p都不能改变。
* 与 p 之间有没有const是指 指针p的指向 是 固定的地址 还是 任意指向都可以 ,在这段代码中*与p之间有const的话,他指向了count的地址就不能在接下来的代码中改为指向其他地址了
第2个p只能指向count不能再指向其他变量了
举报
C++扫清通往面向对象的最后一道障碍,将所有知识点融会贯通
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号