由于Win32 API文档的函数列表使用函数的常用名字(例如, SetWindowText),所有的字符串都是用TCHAR来定义的。(除了XP中引入的只适用于Unicode的API)。表示指向字符/字符串的指针。WINDOWS 下面的程序设计可以支持MBCS和UNICODE两种编码的字符串,具体用那种就看你定义了MBCS宏还是UNICODE宏。MBCS宏对应的字符串指针 是char*也就是LPSTR,UNICODE对应的指针是unsigned short*也就是LPWSTR,为了写程序方便微软定义了类型LPTSTR,在MBCS下它就是char*,在UNICODE下它是unsigned char*,这样你就可以重定义一个宏进行不同字符集的转换了。