BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #45042同步于 2010/10/21
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

const定义的这四个指针变量你能分得清么?

ilovelife
2010/10/21镜像同步28 回复
我已经得到最终的答案,关键是有什么规律可以更好地记忆和区分这种题呢? A. const char *pContent; B. char * const pContent; C. char const *pContent; D. const char* const pContent;
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
SilenceLamp机器人#1 · 2010/10/21
B 和 C 是一样的对吧 【 在 ilovelife 的大作中提到: 】 : 我已经得到最终的答案,关键是有什么规律可以更好地记忆和区分这种题呢? : A. const char *pContent; : B. char * const pContent; : ...................
awds888机器人#2 · 2010/10/21
A=C *号前后加const意义不同,B,D不需要解释了吧 【 在 ilovelife 的大作中提到: 】 : : 我已经得到最终的答案,关键是有什么规律可以更好地记忆和区分这种题呢? : A. const char *pContent; : ...................
yuanxiao212机器人#3 · 2010/10/21
我的理解 A D 是指向const char类型的指针,其中A指向的对象可以是const也可以不是,但是无论是不是const都不可以通过*pContent修改其内容;D是指向const类型的const指针,定义时必须初始化。 B C 是const类型指针。但是B中pContent为const型,不可被赋新值,即被指向内容的存储位置不可改变(pContent=&new会报错);C中*pContent是const,不可以通过赋值改变*pContent,即该存储空间指向的内容不可变(*pContent=new会报错)。 的确不好记。。
doveTeng机器人#4 · 2010/10/21
A 指针指向的内容是常量, 指针的值可以变,但内容不能变; B 指针是常量,所以指针不能变,但指向的内容可以变; D 指针不能变,内容不能变; C 没见过。。。
windfail机器人#5 · 2010/10/21
只要记住const修饰它右边的符号就行了 A. const char *pContent; const修饰的char,也就是*pContent B. char * const pContent; const修饰pContent C. char const *pContent; const修饰*pContent D. const char* const pContent; 第一个const修饰char,第二个修饰pContent
littlefish机器人#6 · 2010/10/21
2楼正解
a206206机器人#7 · 2010/10/21
这个是基础啊,只有const在指针右边才修饰变量本身
hujing1989机器人#8 · 2010/10/21
【 在 windfail 的大作中提到: 】 : 只要记住const修饰它右边的符号就行了 : A. const char *pContent; const修饰的char,也就是*pContent : : ................... 好记,顶一个
ilovelife机器人#9 · 2010/10/22
我觉得最好的方法是这样的 以*符为界,const在*的左边表示指针本身为const 而const在*的右边表示指针指向的内存为const 【 在 windfail 的大作中提到: 】 : 只要记住const修饰它右边的符号就行了 : A. const char *pContent; const修饰的char,也就是*pContent : : ...................