您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 冶金工业 > 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();mEmpty=str.IsEmpty();//mEmpty==TRUE4、转换大小写:MakeUpper(),MakeLower();5、转换顺序:MakeReverse();二、字符串的查找1、Find:从制定位置开始查找指定字符串,返回其位置(找不到返回-1)CStringstr(_T(abcdefg));intidx=str.Find(_T(cde),0);//idx的值为2;2、ReverseFind:从字符串末尾开始查找指定的字符,返回其位置,找不到返回-1,虽然是从后向前查找,但是位置为从开始算起;CStringstr(_T(abcdefg));intidx=str.ReverseFind('e');//idx的值为4;3、FindOneOf:查找参数中给定字符串中的任意字符,返回第一次出现的位置CStringstr(_T(abcabcd));intidx=str.FindOneOf(_T(cbd));//idx的值为1;三、字符串的提取Left,Mid,Right:分别实现从CString对象的左、中、右进行字符串的提取操作CStringstr(_T(abcd));CStringstrResult=str.Left(2);//strResult==abCStringTCStringCStringACStringW操作的字符类型:TCHAR操作的字符类型:char操作的字符类型:wchar_tstrResult=str.Mid(1);//strResult==bcdstrResult=str.Mid(0,2);//strResult==abstrResult=str.Right(2);//strResult==cd四、其他类型与CString类型的转换,CStringstr;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)转换)CStringstr;str=abc;char*p=defg;str=p;2、当前工程环境非Unicode(宽字节向窄字节转换)CStringstr;str=Labc;wchar_t*p=Ldefg;str=p;六、CString对象包含字符串所占用的字节数CStringstr;intn=str.GetLength()*sizeof(TCHAR);**错误的求法:sizeof(CString)、sizeof(str),这是求指针长度,总是为4
本文标题:C++中CString的用法详解
链接地址:https://www.777doc.com/doc-4255470 .html