欢迎来到天天文库
浏览记录
ID:39548737
大小:52.00 KB
页数:5页
时间:2019-07-06
《c++字符串操作经验》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、大中小1. 字符类型和字符串lchar,wchar_t,CHAR,BYTE,UCHAR,WCHAR,TCHAR,TBYTEchar是C语言标准数据类型,字符型,至于由几个字节组成通常由编译器决定,一般一个字节。wchar_t是char的Unicode版本。相当于unsignedshort。一般两个字节。CHAR和WCHAR分别是char和wchar_t的别名,决不会等同。TCHAR是两面派,在当前编译方式为Unicode时等价于WCHAR,而ANSI(默认)方式时又等价于CHAR。BYTE和UCHAR都相当于unsignedchar,在取得字符编码(00~FF)的时候非常有用。TBYTE
2、也是两面派,在当前编译方式为Unicode时等价于WCHAR,而ANSI(默认)方式时又等价于BYTE。 lPSTR,PWSTR,PCSTR,PCWSTR,LPSTR,LPWSTR,LPCSTR,LPCWSTR typedefCHAR*PSTR; typedefWCHAR*PWSTR; typedefCONSTCHAR*PCSTR; typedefCONSTWCHAR*PCWSTR; typedefCHAR*LPSTR; typ
3、edefWCHAR*LPWSTR; typedef__nullterminatedCONSTCHAR*LPCSTR; typedefCONSTWCHAR*LPCWSTR; lPTSTR,LPTSTR,PCTSTR,LPCTSTR在ANSI编译方式下,PTSTR和LPTSTR等价于LPSTR,在Unicode下等价于LPWSTR。在ANSI编译方式下,PCTSTR和LPCTSTR等价于LPCSTR,在Unicode下等价于LPCWSTR。 lCStringA,CStringW,CString,XCHAR,YCHAR,PXSTR,PYSTR,
4、PCXSTR,PCYSTRCstringA是由CHAR组成的字符串CStringW是由WCHAR组成的字符串CString是由TCHAR组成的字符串XCHAR表示和字符串组成字符相同的字符,YCHAR表示和字符串组成字符不同的字符PXSTR表示和字符串组成字符相同的字符串,PYSTR表示和字符串组成字符不同的字符串PCXSTR表示和字符串组成字符相同的CONST字符串,PCYSTR表示和字符串组成字符不同的CONST字符串 2.字符串类型转换l用构造方法进行CStringT类之间的转换直接调用CString,CstringA等的构造方法,把不同的字符串类作为参数,在构造中实现转换。CStrin
5、gstr1;CStringAstrA1(str1); //强制转换成ANSI字符串……对strA1进行**操作……CStringstr2(strA1); //变换回去 lCStringT类和字符(串)之间的转换调用CString的GetAt方法,可以得到XCHAR,即与字符串类组成字符相同的字符。CStringA的GetAt方法得到的是CHAR,CString的GetAt方法得到的是TCHAR,CStringW的GetAt方法得到的是WCHAR。此外,也可以使用象数组索引下标一样得到XCHAR,如str1[2]等价于str1.GetAt(2)。 调用CString的G
6、etBuffer方法,可以得到PXSTR,即与字符串类组成字符相同的字符串。CStringA的GetBuffer方法得到的是LPSTR,CString的GetBuffer方法得到的是LPTSTR,CStringW的GetBuffer方法得到的是LPWSTR。调用CString的GetString方法,也可以得到PCXSTR,即与字符串类组成字符相同的const字符串。CStringA的GetBuffer方法得到的是LPCSTR,CString的GetBuffer方法得到的是LPCTSTR,CStringW的GetBuffer方法得到的是LPCWSTR。 l字符(串)之间的转换使用ATL的字符串
7、转换宏,可以实现不同类型的字符串转换。在宏名称里面,分别用A,W,T代表ANSI字符串,Unicode字符串,以及TCHAR字符串。并分别用CA,CW,CT来代表相应的const字符串。对ANSI字符串进行转换操作的宏有A2W,A2T,A2CW,A2CT。对Unicode字符串进行转换操作的宏有W2A,W2T,W2CA,W2CT。对TCHAR字符串进行转换操作的宏有T2W,T2A,T2CW,T2C
此文档下载收益归作者所有