大家好,我正在为学校制作一个基于文本的小冒险游戏,我想知道您是否可以将 Unicode 添加到 C++。现在我添加了这个:Д 但是当我调试我的游戏时它只是一个“?” 而不是“Д”。我正在使用 iostream “cout” 方法输出文本。我需要包括一些东西吗?我使用 Visual Studio Express 2012。
这就是我输入 Д 的方式:
cout << "Д |" << endl; //It's a part of the map
大家好,我正在为学校制作一个基于文本的小冒险游戏,我想知道您是否可以将 Unicode 添加到 C++。现在我添加了这个:Д 但是当我调试我的游戏时它只是一个“?” 而不是“Д”。我正在使用 iostream “cout” 方法输出文本。我需要包括一些东西吗?我使用 Visual Studio Express 2012。
这就是我输入 Д 的方式:
cout << "Д |" << endl; //It's a part of the map
在 Visual Studio 下,您可以在多字节、Unicode 和第三个选项之间进行选择。
您将在项目属性框中找到该属性,
在“解决方案资源管理器”中右键单击您的项目,选择“属性”(在底部),在选项树中转到“常规”,您将类似于:
选择 Unicode,应用并关闭。
现在重建项目,它将工作。
对于您的特定示例,这对我有用,尽管我的 vim 中有这个:“fileencoding=utf-8”。那可能会产生影响。至于 VS2012,我希望做类似这里的事情,但不是“关闭”,而是需要“打开”:如何在 VC++ 项目中关闭 Unicode?
#include <iostream>
using namespace std;
int main()
{
cout << "Д |" << endl;
return 0;
}
您可能还可以在该领域使用 C++11 研究 unicode 文字。
还有std::wcout、std::wcin、std::wstring,但你可能想看看ICU。这也是 Qt 通常使用的。