无法将参数从'const char [20]'转换为'LPCWSTR' [英] Cannot convert parameter from 'const char[20]' to 'LPCWSTR'
本文介绍了无法将参数从'const char [20]'转换为'LPCWSTR'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
编译此代码时:
#include< windows.h>
int WINAPI WinMain(HINSTANCE hInsance,HINSTANCE hPrevInstance,PSTR cmdLine,int showCmd){
MessageBox(0,First Win32 Program,Window Tittle,MB_OK)
}
我得到编译器错误:
错误C2664:'MessageBoxW':无法将参数2从'const char [20]'转换为'LPCWSTR'1>指向的类型是不相关的;转换需要reinterpret_cast,C风格的转换或函数式转换
我做错了什么?
您已定义 UNICODE
,因此 MessageBox
正在等待一个宽字符串。
When compiling this code:
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInsance,HINSTANCE hPrevInstance,PSTR cmdLine,int showCmd){
MessageBox(0,"First Win32 Program","Window Tittle",MB_OK);
}
I get the compiler error:
Error C2664: 'MessageBoxW': cannot convert parameter 2 from 'const char [20]' to 'LPCWSTR' 1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
What am I doing wrong?
解决方案
You have UNICODE
defined, so MessageBox
is expecting a wide string.
这篇关于无法将参数从'const char [20]'转换为'LPCWSTR'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文