最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

C++中CString的用法详解

来源:动视网 责编:小OO 时间:2025-10-02 10:45:47
文档

C++中CString的用法详解

关于TCHAR,char,wchar_t三种字符类型的区别,会在随后的文章中详细解释!下面是一、CString类的几种基本操作:1、长度:GetLength();CStringstr(_T("abc"));intlen=str.GetLength();//len==32、是否为空(即不含字符):IsEmpty();3、清空字符串:Empty();CStringstr(_T("abc"));BOOLmEmpty=str.IsEmpty();//mEmpty==FALSEstr.Empty();m
推荐度:
导读关于TCHAR,char,wchar_t三种字符类型的区别,会在随后的文章中详细解释!下面是一、CString类的几种基本操作:1、长度:GetLength();CStringstr(_T("abc"));intlen=str.GetLength();//len==32、是否为空(即不含字符):IsEmpty();3、清空字符串:Empty();CStringstr(_T("abc"));BOOLmEmpty=str.IsEmpty();//mEmpty==FALSEstr.Empty();m


关于TCHAR, char, wchar_t三种字符类型的区别,会在随后的文章中详细解释!下面是一、CString类的几种基本操作:

1、长度:GetLength();

CString str(_T("abc"));

int len = str.GetLength(); //len == 3

2、是否为空(即不含字符):IsEmpty();

3、清空字符串:Empty();

CString str(_T("abc"));

BOOL mEmpty = str.IsEmpty(); //mEmpty == FALSE

str.Empty();

mEmpty = str.IsEmpty(); //mEmpty == TRUE

4、转换大小写:MakeUpper(),MakeLower();

5、转换顺序:MakeReverse();

二、字符串的查找

1、Find:从制定位置开始查找指定字符串,返回其位置(找不到返回-1)

CString str(_T("abcdefg"));

int idx = str.Find(_T("cde"), 0); //idx 的值为2;

2、ReverseFind:从字符串末尾开始查找指定的字符,返回其位置,找不到返回 -1,虽然是从后向前查找,但是位置为从开始算起;

CString str(_T("abcdefg"));

int idx = str.ReverseFind('e'); //idx 的值为4;

3、FindOneOf:查找参数中给定字符串中的任意字符,返回第一次出现的位置

CString str(_T("abcabcd"));

int idx = str.FindOneOf(_T("cbd")); //idx 的值为1;

三、字符串的提取

Left,Mid,Right:分别实现从CString对象的左、中、右进行字符串的提取操作

CString str(_T("abcd"));

CString strResult = str.Left(2); //strResult == ab

strResult = str.Mid(1); //strResult == bcd

strResult = str.Mid(0, 2); //strResult == ab

strResult = str.Right(2); //strResult == cd

四、其他类型与CString类型的转换,CString str;

1、格式化字符串Format:实现从int、long等数值类型、TCHAR、TCHAR*等类型向CString类型转换(注:TCHAR、TCHAR*等类型向CString类型转换,可以直接赋值)

-- CString -> int:_ttoi()

-- CString -> TCHAR* :

1)TCHAR* T = str.GetBuffer(); str.ReleaseBuffer();

2)TCHAR* T = (LPTSTR)(LPCTSTR)str;

五、CString对象的Ansi与Unicode转换

1、当前工程环境Unicode(窄字节(Ansi)向宽字节(Unicode)转换)

CString str;

str = "abc";

char* p = "defg";

str = p;

2、当前工程环境非Unicode(宽字节向窄字节转换)

CString str;

str = L"abc";

wchar_t* p = L"defg";

str = p;

六、CString对象包含字符串所占用的字节数

CString str;

int n = str.GetLength() * sizeof(TCHAR);

**错误的求法:sizeof(CString)、sizeof(str),这是求指针长度,总是为4

文档

C++中CString的用法详解

关于TCHAR,char,wchar_t三种字符类型的区别,会在随后的文章中详细解释!下面是一、CString类的几种基本操作:1、长度:GetLength();CStringstr(_T("abc"));intlen=str.GetLength();//len==32、是否为空(即不含字符):IsEmpty();3、清空字符串:Empty();CStringstr(_T("abc"));BOOLmEmpty=str.IsEmpty();//mEmpty==FALSEstr.Empty();m
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top