记下几个字符串东东,即他们得区别:
LPSTR:一个32位指向字符串的指针,相当于char *;
LPCSTR:一个32位指向字符串常量的指针,相当于const char *;
LPWSTR:一个32位指向Unicode字符串指针,相当于wchar_t *;
LP C WSTR:一个32位指向Unicode字符串常量指针,相当于const wchar_t *;
当然我们也可以相互转换一下(强行转换会变乱码):
LPWSTR--->LPTSTR: W2T();
LPTSTR--->LPWSTR: T2W();
LPCWSTR--->LPCSTR: W2CT();
LPCSTR--->LPCWSTR:T2CW();
LPSTR:一个32位指向字符串的指针,相当于char *;
LPCSTR:一个32位指向字符串常量的指针,相当于const char *;
LPWSTR:一个32位指向Unicode字符串指针,相当于wchar_t *;
LP C WSTR:一个32位指向Unicode字符串常量指针,相当于const wchar_t *;
1
#ifdef UNICODE
2
typedef LPWSTR LPTSTR;
3
typedef LPCWSTR LPCTSTR;
4
#else
5
typedef LPSTR LPTSTR;
6
typedef LPCSTR LPCTSTR;
7
#endif
当然我们也可以相互转换一下(强行转换会变乱码):
LPWSTR--->LPTSTR: W2T();
LPTSTR--->LPWSTR: T2W();
LPCWSTR--->LPCSTR: W2CT();
LPCSTR--->LPCWSTR:T2CW();
上面我们可以看到L为LONG,P为POINT指针,W为WIDE,C为constant,STR为string。
本文转自网魂小兵博客园博客,原文链接:http://www.cnblogs.com/xdotnet/archive/2007/06/30/cpp_string.html,如需转载请自行联系原作者