c++里指向字符串常量的指针和指向字符串的常量的指针有什么区别啊

求大神详细的解释一下... 求大神详细的解释一下 展开
 我来答
Bk0X
推荐于2017-11-28 · TA获得超过9413个赞
知道小有建树答主
回答量:1217
采纳率:60%
帮助的人:656万
展开全部
指向 "字符串常量" 和 指向字符串的" 常量的指针"

前者字符串是常量, 后者指针是常量.

常量就是 "不许修改的量", 所以

前者 "不许修改字符串", 后者是 "不许修改指针"

例如:

const char* p = "hello"; // 指向 "字符串常量"
p[0] = 'X'; // 错误! 想要修改字符串的第一个字符. 但是常量不允许修改
p = p2; // 正确! 让p指向另外一个指针.

char* const p = "hello"; // 指向字符串的" 常量的指针"
p[0] = 'X'; // 正确! 允许修改字符串, 因为该字符串不是常量
p = p2; // 错误! 指针是常量, 不许修改p的指向

顺便说一句.
char const * 和 const char* 是一样的. const 的位置在char左边还是右边都一样.
常量指针的const应当写在 *星号的右边.

指向常量字符串的常量指针的写法是 const char* const p = "xx"; 要2个const
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
TableDI
2024-07-18 广告
在Excel中,字符串匹配函数主要用于查找和定位特定字符串在文本中的位置或进行替换操作。常用的字符串匹配函数包括FIND、SEARCH、SUBSTITUTE和REPLACE等。FIND和SEARCH函数用于查找字符串的位置,而SUBSTIT... 点击进入详情页
本回答由TableDI提供
匿名用户

2012-12-29
展开全部
你要问的是const char *和char * const?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式