C++ const char\*与char\* const_Summit_Yue的博客 - CSDN博客
文章推薦指數: 80 %
C++ const char*与char* constC++里的const char*和char* const一直很容易混,其实只要理解了const到底修饰的哪个,就会豁然开朗。
C++constchar\*与char\*const
Summit_Yue
于 2017-10-2915:08:34 发布
2153
收藏
1
分类专栏:
C/C++
版权声明:本文为博主原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u011197534/article/details/78385542
版权
C/C++
专栏收录该内容
11篇文章
0订阅
订阅专栏
C++constchar*与char*const
C++里的constchar*和char*const一直很容易混,其实只要理解了const到底修饰的哪个,就会豁然开朗。
或者就按书中所写的,倒着读来记忆。
constchar*p—>p是一个指针,指向constcharchar*constp—>p是一个常量,指向char的指针常量代码示例:
chara='a';
charb='b';
constchar*p=&a;//p是一个指向constchar的指针,因此p可变,但是*p不可变
p=&b;//正确
*p='c';//错误
char*constp=&a;//p是一个指向char的常量指针,因此p不可变,*p可变
*p='c';//正确
p=&b;//错误
constchar*constp=&a;//p是一个指向constchar的常量指针,p不可变,*p也不可变
p=&b;//错误
*p='c';//错误
//举个例子
constchar*p="abc";//p指向一个字符串,p可变,但*p不可变
p="ddd";//正确
*p='d';//错误
CSDN社区图书馆,开张营业!
深读计划,写书评领图书福利~
Summit_Yue
关注
关注
0
点赞
踩
1
评论
1
收藏
打赏
扫一扫,分享内容
点击复制链接
专栏目录
博客
【C++】constchar*、charconst*、char*const
张林克的博客
07-22
108
pass
博客
constchar*、charconst*、char*const三者的区别
一个人的旅行的博客
03-28
6088
C/C++中关于以下三种定义:constchar*ptr;charconst*ptr;char*constptr;现整理三者之间的区别与联系。
一、constchar*ptr;定义一个指向字符常量的指针,这里,ptr是一个指向char*类型的常量,所以不能用ptr来修改所指向的内容,换句话说,*ptr的值为const,不能修改。
但是ptr的声明并不意味着它指向的值实际上就是一...
评论 1
您还未登录,请先
登录
后发表或查看评论
博客
C++中char*和constchar*的区别
Midorii的博客
03-26
1万+
最近学习C++时看到如下范例代码
#include
全局变量constchar*test=NULL;
然后在函数A中要改变它voidfuncA()
{
chartest2[512];
strcpy(test2,"thisisatest");
test=test2;
}
但
是,我们知道,test2是在栈上分配的,上面的代码是有问题的
如果我们在堆上分配,如下voidfuncA()
{id;
}
stringPerson::getName()
{
returnthis->name;
}
constPersonp(1,"yuewenlong");
p.getId();//正确,getId为const成员函数
p.getName();//错误,p为const对象,不能调用非const成员函数
constPersonp1(2,"dengqilong");
p.getId();//正确,普通对象可以调用const成员函数
p.getName();//正确,普通对象可以调用非const成员函数
[/code]
第12行,应该是Personp1(2,"dengqilong");
Windows10下VS2013+PCL1.8环境配置
背后的神秘
回复
pyl10PM:请问你们解决了吗
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
阿里巴巴自动驾驶三维点云分割PointNet实现
机器学习中的L0、L1与L2范数
JavaScript作用域与作用域链
2019年1篇
2018年1篇
2017年37篇
2016年10篇
目录
目录
分类专栏
C/C++
11篇
MechineLearning
8篇
ComputerVerison
1篇
DeepLearning
4篇
Python
2篇
JavaScript
2篇
Java
Algorithm
22篇
PHP
1篇
PCL
2篇
目录
打赏作者
Summit_Yue
你的鼓励将是我创作的最大动力
¥2
¥4
¥6
¥10
¥20
输入1-500的整数
余额支付
(余额:--)
扫码支付
扫码支付:¥2
获取中
扫码支付
您的余额不足,请更换扫码支付或充值
打赏作者
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
0
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。
余额充值
延伸文章資訊
- 1C++中string、char *、char[]、const char*的轉換 - IT人
源格式賦值為具體的內容,目標格式賦值為空。 C++中string、char *、char[]、const char*的轉換. 總結如下:. A.
- 2C++) (字串和字元常值
在Microsoft C++ 中,您可以使用字串常值來初始化非const char 或 wchar_t 的指標。 C99 程式碼中允許這個非常數初始化,但在C++98 中已被取代,並 ...
- 3[C] 每天來點字串用法(3) - from const char* to char
這次沒有拖到欸d(`・∀・)b(然而三年後拖到了) 今天帶來的不是函式,而是一個小技巧:. 由 const char* 轉成 char*. 有時候可能在將字串傳入函式 ...
- 4在C++ 中将std::string 转换为const char* - Techie Delight
这篇文章将讨论如何在C++ 中将std::string 转换为const char*。返回的指针应指向一个char 数组,该数组包含与字符串对象中存在的字符序列相同的字符序列,并在末尾附加 ...
- 5指標與字串
const char *text = "hello";. 如此一來,試圖透過 text 改變字元,編譯器會失敗,從而避免了執行時期的錯誤。