Честное слово, я сейчас схожу с ума. Позвольте мне начать с того, что функция MessageBox отлично работает в CodeBlocks, когда я определяю текст внутри него и что-нет; но по какой-то причине Visual Studio настолько разборчива, что может войти в эту функцию MessageBox.Почему мой ящик сообщений отображается на другом языке?
Он продолжал говорить мне, что все, что я вложил внутрь, было недействительным для «вещи» LPCWSTR. Чтобы обойти это, я запрограммировал эту вещь ниже:
int main()
{
LPCWSTR a;
std::string s = "Please help me.";
a = (LPCWSTR)s.c_str();
LPCWSTR b;
std::string t = "MTS";
b = (LPCWSTR)t.c_str();
MessageBox(0,a,b, MB_OK | MB_ICONSTOP);
}
Вместо того, чтобы он работал, как я первоначально думал, что это будет, вместо этого я получил это в результате:
Это очень напряженный для я и я знаю, что это было задано еще раз здесь, поэтому, пожалуйста, не ставьте мой вопрос как дубликат. Как заставить этот код работать, поэтому мое сообщение появляется на английском языке и изображает то, что я пытаюсь сказать четко?
Благодаря загодя,
МТС
'MessageBox' принимает аргументы' LPCTSTR', но вы даете ему 'LPCWSTR'. Попробуйте объявить/кастинг 'a' и' b' как 'LPCTSTR' вместо этого? – Doc
@Doc a) Если MessageBox становится MessageBoxA или MessageBoxW зависит от настроек проекта/материала препроцессора. б) Кастинг не помогает. c) С выходом на японском языке это вариант W. – deviantfan