问题描述
我正在尝试在Visual Studio 2019 C ++中打印字符串汉字。 我想我应该说的可能是,我在Windows 10上,并且我一直试图通过互联网弄一个小时,以至于无法解决。
这是我的代码:
#include <iostream>
int main(void) {
std::wstring myWString = L"汉字"; // Tried a wstring,didn't output anything
std::string myString = "汉字"; // Tried using a normal string,it outputted the �'s
std::wcout << myWString << std::endl;
std::cout << myString << std::endl;
}
在项目属性中,我在C / C ++下的命令行的附加选项中添加了/source-charset:utf-8 /execution-charset:utf-8
,并且还在我的区域设置中选中了Beta: Use Unicode UTF-8 for worldwide language support.
。那么,为什么我不能打印出这些字符?如果可以的话,这个字符是否可以修复?
已修复:我进入注册表编辑器进入HKEY_CURRENT_USER\Control Panel\Input Method
,添加了一个名为EnableHexnumpad的新值,并将数据设置为“ 1”。之后,我重新启动了PC并可以正常工作。
解决方法
这个问题与您的相似。 浏览答案,有一个打印出来的你好。 Output unicode strings in Windows console app (我想对您的问题发表评论,但是我的低信誉分数不允许我这样做,因此,很抱歉创建“答案”评论。)