MFC的CString使用
CString没有基类。
一个CString对象由可变长度的一队字符组成。CString使用类似于Basic的语法提供函数和操作符。连接和比较操作符以及简化的内存管理使CString对象比普通字符串数组容易使用。
CString是基于TCHAR数据类型的对象。如果在你的程序中定义了符号_UNICODE,则TCHAR被定义为类型wchar_t,即16位字符类型;否则,TCHAR被定义为char,即8位字符类型。在UNICODE方式下,CString对象由16位字符组成。非UNICODE方式下,CString对象由8位字符组成。
当不使用_UNICODE时,CString是多字节字符集(MBCS,也被认为是双字节字符集,DBCS)。注意,对于MBCS字符串,CString仍然基于8位字符来计算,返回,以及处理字符串,并且你的应用程序必须自己解释MBCS的开始和结束字节。
| CString | 以各种方法构造一个CString对象 |
| GetLength | 返回CString对象中的字符数。对多字节字符,按8位字符计算;即在一个多字节字符中一个开始和结束字节算作两个字符 |
| IsEmpty | 测试一个CString对象中是否不含有字符 |
| Empty | 强制一个字符串的长度为0 |
| GetAt | 返回在给定位置的字符 |
| operator [] | 返回在给定位置的字符--它是代替GetAt的操作符 |
| SetAt | 设置给定位置上的字符 |
| operator LPCTSTR | 像访问一个C风格的字符串一样,直接访问保存在一个CString对象中的字符 |
分配/串联
| operator = | 给CString对象赋一个新值 |
| operator + | 连接两个字符串并返回一个新字符串 |
| operator += | 把一个新字符串连接到一个已经存在的字符串的末端 |
比较
| operator 比较操作符 | 比较操作符(大小写敏感) |
| Compare | 比较两个字符串(大小写敏感) |
| CompareNoCase | 比较两个字符串(不区分大小写) |
| Collate | 比较两个字符串(大小写敏感,使用现场特别信息) |
| CollateNoCase | 比较两个字符串(不区分大小写,使用现场特别信息) |
提取
| Mid | 提取一个字符串的中间一部分(类似于BASIC的MID$函数) |
| Left | 提取一个字符串的左边一部分(类似于BASIC的LEFT$函数) |
| Right | 提取一个字符串的右边一部分(类似于BASIC的RIGHT$函数) |
| SpanIncluding | 提取一个字符串,该子字符串中仅含有某一字符集合中的字符。 |
| SpanExcluding | 提取一个字符串,该子字符串中不含有某一字符集合中的字符。 |
其他转换
| MakeUpper | 将字符串中的所有字符转换为大写字符 |
| MakeLower | 将字符串中的所有字符转换为小写字符 |
| MakeReverse | 将字符串中的字符以倒序排列 |
| Replace | 用其它字符替换指定的字符 |
| Remove | 从一个字符串中移走指定的字符 |
| Insert | 在字符串中的给定索引处插入一个字符或一个子字符串 |
| Delete | 从一个字符串中删除一个或多个字符 |
| Format | 像sprintf函数一样格式化该字符串 |
| FormatV | 像vprintf函数一样格式化该字符串 |
| TrimLeft | 将字符串中前面的空格整理出字符串 |
| TrimRight | 将字符串中结尾的空格整理出字符串 |
| FormatMessage | 格式化一个消息字符串 |
搜索
| Find | 在一个较大的字符串中查找字符或子字符串 |
| ReverseFind | 在一个较大的字符串中从末端开始查找某个字符 |
| FindOneOf | 查找与某个字符集合中的字符相匹配的第一个字符 |
MFC的CString使用的更多相关文章
- 简析MFC中CString用作C字符串
MFC中CString是一个方便的字符串操作的类, 然而很多函数需要传递字符指针, 这就需要进行CString和普通字符串的转换. 1.CString用作C字符串常量. 直接使用强制类型转换即可, ...
- MFC中CString.Format的用法
http://www.cnblogs.com/kongtiao/archive/2012/06/13/2548033.html 在MFC程序中,使用CString来处理字符串是一个很不错的选择.CSt ...
- mfc中CString转化为string的方法
LL(1)分析法实验的mfc做到最后因为CString转化为string的问题卡了一个多小时,也是惨,网上各种方法找过都不行.幸亏最后还是找到几行代码搞定了.特此mark一下. USES_CONVER ...
- 关于在mfc中cstring转为float和ini
CString str1,str, str2; GetDlgItemText(IDC_EDIT1, str1); GetDlgItemText(IDC_EDIT2, str2); UINT value ...
- MFC中CString.Format的详细用法
本文转载自:http://blog.csdn.net/wangkaishou/article/details/5846152,感谢网友 Technorati 标签: CString For ...
- MFC中CString.Format类详解
在MFC程序中,使用CString来处理字符串是一个很不错的选择.CString既可以处理Unicode标准的字符串,也可以处理ANSI标准的字符串.CString的Format方法给我们进行字符串的 ...
- MFC中CString转换成char数组的问题
由于结构体中用到联合体(联合体需要确定分配内存分配大小)或其它因素,需要用char数组来保存字符串,但是在MFC中一般都是用CString来存放字条串.关于它们之间的转换,在VS2008中有时会出现异 ...
- 实战c++中的string系列--std::string与MFC中CString的转换
搞过MFC的人都知道cstring,给我们提供了非常多便利的方法. CString 是一种非常实用的数据类型. 它们非常大程度上简化了MFC中的很多操作,使得MFC在做字符串操作的时候方便了非常多.无 ...
- VS2013 MFC C++ CString ,const char , char, string 类型转换
VS2013 测试 以下测试加入头文件: # include <string>#include <cstdlib>using namespace std; //-------- ...
- c++之常见数据类型(int,double,float,long double long long 与std::string之间)相互转换(含MFC的CString、含C++11新特性函数)
--- 已经通过初步测试---- ------------------ 下面的是传统常见数据类型的转换(非c++11)--------------- std::string 与其他常用类型相互转换, ...
随机推荐
- 怎样退出App之前唤醒还有一个App?
郝萌主倾心贡献,尊重作者的劳动成果,请勿转载. 假设文章对您有所帮助,欢迎给作者捐赠,支持郝萌主,捐赠数额任意,重在心意^_^ 我要捐赠: 点击捐赠 Cocos2d-X源代码下载:点我传送 SDK并没 ...
- 优化梯度计算的改进的HS光流算法
前言 在经典HS光流算法中,图像中两点间的灰度变化被假定为线性的,但实际上灰度变化是非线性的.本文详细分析了灰度估计不准确造成的偏差并提出了一种改进HS光流算法,这种算法可以得到较好的计算结果,并能明 ...
- 如果在 Code First 模式下使用,则使用 T4 模板为 Database First 和 Model First
web.config里的链接字符串最好和app.config里相同,因为ef的链接字符串需要一些特殊的参数
- session自己定义存储,怎样更好地进行session共享;读tomcat7源代码,org.apache.catalina.session.FileStore可知
session自己定义存储.怎样更好地进行session共享: 读tomcat源代码,org.apache.catalina.session.FileStore可知 一.详见: 方法1 public ...
- 分享一个utils.js源码
NEJ.define([ './global.js', '{platform}util.js' ],function(NEJ,_h,_p,_o,_f,_r){ /* * 查看数据是否指定类型 * @p ...
- Linux下Redis C++操作的封装
安装和启动Redis服务...略!很粗糙的版本,待改进... Redis Client C++示例代码...略! /** * Time: 14-3-10 * File: RedisCache.h * ...
- P1604&P1601
[usaco2010]冲浪_slide 受到秘鲁的马丘比丘的新式水上乐园的启发,Farmer John决定也为奶牛们建一个水上乐园.当然,它最大的亮点就是新奇巨大的水上冲浪. 超级轨道包含 E (1 ...
- JavaScript学习第四天
1.自定义属性,使用好索引值 例子: 下面有一段js代码: <script> window.onload = function(){ var oBtn = document.getElem ...
- Gym - 101147G G - The Galactic Olympics —— 组合数学 - 第二类斯特林数
题目链接:http://codeforces.com/gym/101147/problem/G G. The Galactic Olympics time limit per test 2.0 s m ...
- git rev-list 和 git rev-parse
git-rev-list - Lists commit objects in reverse chronological order https://git-scm.com/docs/git-rev- ...