1. LPCTSTR 辨析
#ifdef UNICODE
typedef LPCWSTR LPCTSTR;
#else
typedef LPCSTR LPCTSTR;
#endif
typedef CONST WCHAR *LPCWSTR;
typedef __nullterminated CONST CHAR *LPCSTR;
综上可以知道:
在Unicode 编码下 LPCTSTR 就是LPCWSTR 也就是CONST WCHAR *
在非Unicode编码下LPCTSTR 就是LPCSTR 也就是 CONST CHAR *
2. LPSTR相关
LPSTR 一个32位的指向字符串的指针
LPCSTR 一个32位的指向字符串常量的指针
LPWSTR 一个32位的指向unicode字符串的指针
LPCWSTR 个32位的指向unicode字符串常量的指针
LPSTR = char *
LPCSTR = const char *
LPWSTR = wchar_t *
LPCWSTR = const wchar_t *
LPOLESTR = OLECHAR * = BSTR = LPWSTR(Win32)
LPCOLESTR = const OLECHAR * = LPCWSTR(Win32)
LPTSTR = _TCHAR *
LPCTSTR = const _TCHAR *