我打开了winnt.h头文件,发现有两行:
typedef wchar_t WCHAR;
Run Code Online (Sandbox Code Playgroud)
和
typedef WCHAR TCHAR, *PTCHAR;
Run Code Online (Sandbox Code Playgroud)
但我的一篇帖子中有评论说它们之间存在一些差异.那有什么区别?
bma*_*ies 19
如果您阅读整个标题,您会发现:
#ifdef _UNICODE
typedef WCHAR TCHAR;
#else
typedef char TCHAR;
#endif
Run Code Online (Sandbox Code Playgroud)
或者说是这样的话.
也许MS已经取消了最近的狭隘选择.
http://msdn.microsoft.com/en-us/library/aa383751%28VS.85%29.aspx
TCHAR:
如果定义了UNICODE,则为WCHAR,否则为CHAR.
WCHAR:
一个16位的Unicode字符.有关更多信息,请参阅字体使用的字符集.