Visual Studio C ++输出��而不是汉字?

问题描述

我正在尝试在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 (我想对您的问题发表评论,但是我的低信誉分数不允许我这样做,因此,很抱歉创建“答案”评论。)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...