下面的程序在VC6通过,在VS2008不能,错误信息都是“不能将参数……从const char[]转换为LPCWSTR”
2012-03-16 09:13
405 查看
LPCWSTR 的类型是 const wchar_t *,而 const char[] 是 const char * ,类型不兼容,不能隐式转换。 你的可以设置项目所使用的语言,在项目属性里设置。 你也可以不要使用 char 类型,均改为使用 TCHAR 宏,它会根据项目属性自动替换为 char 或 wchar_t ,如 TCHAR Buf[],程序中的字符串字面值也使用 _T() 宏,如 _T("abcd"),请参考 tchar.h 的文档 。 你也可以使用函数转换,将 char 类型 转换为 wchar_t ,如函数 mbstowcs() 等。
相关文章推荐
- VC编译出现如下错误:错误 1 error C2664: “wsprintfW”: 不能将参数 2 从“const char [6]”转换为“LPCWSTR” e:\c_2008\pra6\pra6\
- 关于vc6.0程序到vs2008下运行时的错误error C2664: “MessageBoxW”: 不能将参数 2 从“char *”转换为“LPCWSTR”
- VS2008中关于“MessageBoxW”: 不能将参数 2 从“char [20]”转换为“LPCWSTR”的错误解决
- VS2008中关于“MessageBoxW”: 不能将参数 2 从“char [20]”转换为“LPCWSTR”的错误解决
- vc2008错误:不能将参数 1 从“const char [5]”转换为“LPCTSTR”。。。。各种数据类型之间的转换
- vc2008错误:不能将参数 1 从“const char [5]”转换为“LPCTSTR”
- VS2008中关于“MessageBoxW”: 不能将参数 2 从“char [20]”转换为“LPCWSTR”的错误解决
- vc2008错误:不能将参数 1 从“const char [5]”转换为“LPCTSTR”
- C++ 串口编程 错误 ““CreateFileW”: 不能将参数 1 从“const char [5]”转换为“LPCWSTR””
- vc 不能将参数 1 从const char [*]转换为LPCWSTR
- [error] MFC错误不能将参数1从"const char [3]"转换为"const wchar_t *"
- 不能将参数 1 从“const char [11]”转换为“LPCWSTR”
- error C2664: “MessageBoxW”: 不能将参数 2 从“const char [36]”转换为“LPCWSTR”
- 不能将参数 1 从const char [*]转换为LPCWSTR
- VS2010不能将参数从const char[]转换为LPCWSTR的解决办法
- VS2010--不能将参数 2 从“const char [12]”转换为“LPCWSTR”与指向的类型无关
- error c2664:"MessageBoxW":不能将参数2从“const char[15]”转换为“LPCWSTR”与指向的类型无关
- VS不能将参数从const char[]转换为LPCWSTR的解决办法
- VS2010点滴——不能将参数 1 从“const char [11]”转换为“LPCWSTR”
- VS2010--不能将参数 2 从“const char [12]”转换为“LPCWSTR”与指向的类型无关