CString string char * int double float 之间转化大全 CString、string、char*、int、double、float 是编程中常用的数据类型,了解它们之间的转化关系非常重要。在本文中,我们将详细介绍 CString、string、char* 之间的转化关系,以及它们之间的比较、运算符重载、常用算法等知识点。 一、CString、string、char* 之间的比较 CString、string 和 char* 都是字符串模板类,但它们之间有所不同。string 是标准模板库(STL)定义的字符串类,已经纳入 C++ 标准之中;CString 是 Visual C++ 中最常用的字符串类,继承自 CSimpleStringT 类,主要应用在 MFC 和 ATL 编程中。char* 是 C 编程中最常用的字符串指针,一般以'\0'为结束标志。 在比较方面,CString 和 string 都可以与 char* 进行比较,但它们之间的比较方式不同。CString 可以自动转换为 const char*,而 string 不可以。此外,CString 和 string 的比较结果是值的比较,而 char* 的比较结果是地址的比较。 二、CString、string、char* 之间的转化 CString、string 和 char* 之间的转化关系非常复杂。CString 可以从基本的一些字符串变量构造而来,包括 char* 等;string 可以从几乎所有的字符串构造而来,包括 CString 和 char*。char* 没有构造函数,仅可以赋值。 在转化方面,CString 可以直接用基本的一些字符串赋值,包括 char* 等;string 可以从几乎所有的字符串赋值,包括 CString 和 char*。char* 只能由指针赋值,并且是极危险的操作,建议使用 strcpy 或者 memcpy。 三、运算符重载 CString、string 和 char* 之间的运算符重载也不同。CString 和 string 都可以使用 operator=、operator+、operator+= 等运算符,而 char* 只能使用 operator= 和 operator+=。 在使用运算符重载时,CString 和 string 都可以与 char* 进行操作,但 char* 只能与CString 和 string 进行操作,而不能与 char* 自身进行操作。 四、常用算法 CString、string 和 char* 之间的常用算法包括查找、替换、截取等。查找算法包括 strchr、strstr、strrchr、strspn、find 等,均可以在CString、string 和 char* 之间使用。 在查找方面,CString 和 string 都可以使用查找算法,而 char* 只能使用基本的查找算法。CString 和 string 的查找结果是值的查找,而 char* 的查找结果是地址的查找。 CString、string 和 char* 之间的转化关系非常复杂,了解它们之间的比较、运算符重载、常用算法等知识点非常重要。这将帮助我们更好地使用它们,并编写出更加高效、可靠的代码。
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![cpp](https://img-home.csdnimg.cn/images/20210720083646.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/release/download_crawler_static/2965592/bg1.jpg)
![](https://csdnimg.cn/release/download_crawler_static/2965592/bg2.jpg)
![](https://csdnimg.cn/release/download_crawler_static/2965592/bg3.jpg)
![](https://csdnimg.cn/release/download_crawler_static/2965592/bg4.jpg)
![](https://csdnimg.cn/release/download_crawler_static/2965592/bg5.jpg)
剩余28页未读,继续阅读
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
- worldcup19832013-06-13写的很详细,有参考价值。
- 高深的猿2012-12-09很有用的,真的很棒的
- kevinsun17172013-01-02比较详细,但对新手比较难
![avatar](https://profile-avatar.csdnimg.cn/b0d83c2f03fb44408cf488c5840019b0_zjl3866730.jpg!1)
- 粉丝: 2
- 资源: 14
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
- 打包和分发Rust工具.pdf
- SQL中的CREATE LOGFILE GROUP 语句.pdf
- C语言-leetcode题解之第172题阶乘后的零.zip
- C语言-leetcode题解之第171题Excel列表序号.zip
- C语言-leetcode题解之第169题多数元素.zip
- ocr-图像识别资源ocr-图像识别资源
- 图像识别:基于Resnet50 + VGG16模型融合的人体细胞癌症分类模型实现-图像识别资源
- C语言-leetcode题解之第168题Excel列表名称.zip
- C语言-leetcode题解之第167题两数之和II-输入有序数组.zip
- C语言-leetcode题解之第166题分数到小数.zip
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)