LPCSTR代表了const char *类型,它是一个指向以'\0'结尾的8位(单字节)ANSI字符数组的常量指针,而const wchar_t *类型是一个指向'\0'结尾的16位(双字节)Unicode字符数组的常量指针,因此会导致类型不匹配的编译错误。
解决的办法有两个:
- 右击“解决方案资源管理器”中的项目,“属性→配置属性→常规→项目默认值→字符集”,默认的选项是“使用多字节字符集”,将它改为使用Unicode字符集即可。这样,输入的字符串会默认以const wchar_t *格式储存。
- 第二个方法是使用_T宏,它能够自动识别当前编译器字符串的储存格式并做出相应转换,避免这种类型的编译错误。