标准ANSI,多字节,单字节
char p[] = "1234"; // 一个字符一个字节
Unicode 宽字节 ,一个字符两个字节
TCHAR *p = L"abc"; // 一个字符两个字节
wcslen(p);
如果我们写程序每次都要考虑单字节,宽字节的问题就很麻烦,MFC 通过一些宏来自动适应字节
MFC:
TCHAR:自动适应字节(条件编译)
#ifdef UNICODE // r_winnt #ifndef _TCHAR_DEFINED typedef WCHAR TCHAR, *PTCHAR; typedef WCHAR TBYTE , *PTBYTE ; #define _TCHAR_DEFINED #endif /* !_TCHAR_DEFINED */
#else /* UNICODE */ // r_winnt #ifndef _TCHAR_DEFINED typedef char TCHAR, *PTCHAR; typedef unsigned char TBYTE , *PTBYTE ; #define _TCHAR_DEFINED #endif /* !_TCHAR_DEFINED */
TEXT()与 _T() 等价