将 const char 转换为 Wide char 我得到了乱码

问题描述 投票:0回答:1

这是 VS2008 下的一个旧遗留项目,其设置中带有

character set = Not Set
。 我需要使用以下代码将非宽字符转换为宽字符。

const char*  test = "Καλημέρα";
size_t newsize = strlen(test) + 1;
wchar_t* wcstring = new wchar_t[newsize];
size_t convertedChars = 0;
mbstowcs_s(&convertedChars, wcstring, newsize, test, _TRUNCATE);

无论如何我都无法将字符串

test
转换为宽字符串。我哪里错了?

enter image description here

c++ string visual-studio encoding string-conversion
1个回答
0
投票

感谢大家的帮助。我将 Windows 系统的区域格式设置更改为希腊语(希腊),以使其适用于我的 C++ 应用程序。

注意:尽管调试器输出,控制台中的 TRACE 命令仍正确输出转换。

© www.soinside.com 2019 - 2024. All rights reserved.