浅谈CHAR、WCHAR、TCHAR、LPCTSTR等

VC驿站 VIP教程学习笔记

● Ansi版本:
char、        char * 、                                       const char *
CHAR、    (PCHAR、PSTR、LPSTR)、    LPCSTR


● Unicode版本:
wchar_t、           wchar_t * 、                                           const wchar_t *
WCHAR、          (PWCHAR、PWSTR、LPWSTR)、  LPCWSTR


● T 通用类型:

TCHAR、(TCHAR * 、PTCHAR、PTSTR、LPTSTR)、LPCTSTR

以上,其中:P代表指针的意思,STR代表字符串的意思,L是长指针的意思,在WIN32平台下可以忽略,C代表const常量的意思,W代表wide宽字节的意思,T大家可以理解为通用类型的意思,
就是可以根据工程中是否定义_UNICODE 宏,分别定义成不同的类型,比如:TCHAR 类型,如果工程中定义了_UNICODE 宏,那么他最终被定义成 wchar_t 类型,如果工程中没有定义_UNICODE 宏,那么 TCHAR 被最终定义成 char 类型。

你可能感兴趣的:(C++,unicode,mfc,VC,Visual)