为了账号安全,请及时绑定邮箱和手机立即绑定

const int const *p=&a;和int const *p=&a;有什么区别?

改成int const a=3;int const *p=&a;对否?如果不对,为什么?

正在回答

2 回答

const int const *p 这样声明是错的,这两个const都是修饰int的,所以重复了。

应该写成 const int *p 或 int const *p,这两种写法是一样的,都是将p声明为指向const int的指针。

我猜你想比较的是 const int * const p。这样是将p声明为指向const int的const指针,就是说p本身也是const的。


1 回复 有任何疑惑可以回复我~
const int const *p = &a;
这样是可以编译的


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之离港篇
  • 参与学习       122700    人
  • 解答问题       474    个

C++扫清通往面向对象的最后一道障碍,将所有知识点融会贯通

进入课程

const int const *p=&a;和int const *p=&a;有什么区别?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信