关于 const double* 和 double const *?

ggxi 2004-08-11 03:51:27
const double*cptr; cptr 是一个指向double 类型的const 对象的指针我们可以从右往左把这个定义读为 cptr 是一个指向double 类型的被定义成const 的对象的指针.(c++ primer)
那 double const * 就是 指向一个double型的常量指针. 但实际上 两个定义 好像没什么区别?程序运行起来都是一样的?
double n = 4;
double const *pd = &n ;
double u = 5;
pd = &u;
这样都可以通过?
...全文
2740 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
snow810211 2004-08-11
  • 打赏
  • 举报
回复
c++中,兩者是一樣的
Tdxdy 2004-08-11
  • 打赏
  • 举报
回复
const double* 和 double const *,意思一样!不过double const *这种习惯不好
doolin 2004-08-11
  • 打赏
  • 举报
回复
const 总是修饰从左边起离它最近的一个符号
ntxs 2004-08-11
  • 打赏
  • 举报
回复
在左 为常指针
在右 为指向常量的指针
ntxs 2004-08-11
  • 打赏
  • 举报
回复


是以*为分界的

commology 2004-08-11
  • 打赏
  • 举报
回复
指向常量的指针是不能改变所指的内存的值的,但是指针的值可以改变
常量指针所指的内存的值可以改变,当时指针的值不能改变
RookieStar 2004-08-11
  • 打赏
  • 举报
回复
本来就是一样的吗,primer上说的是助记的方法,不过翻译的也太烂了。
如果要说不同
const double* cptr; // value cannot change
double * const cptr; // pointer itself cannot change
是不同的。

看const和*的相对位置可以区别出两者是不同的。
pacman2000 2004-08-11
  • 打赏
  • 举报
回复
const double * 和 double const * 是一样的。double * const 才不一样。

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧