【问题标题】:How can I display Greek characters in Visual Studio 2008 and C++? [duplicate]如何在 Visual Studio 2008 和 C++ 中显示希腊字符? [复制]
【发布时间】:2014-12-28 06:16:11
【问题描述】:

如何使用纯 C++ 和 VS 2008 Express 显示希腊字符和字符串?

代码如下:

#include <iostream>

int main()
{
    std::cout << 'Φ' << std::endl;
    std::cout << 'Ξ' << std::endl;
    std::cout << "Καλημέρα" << std::endl;

    std::cin.get();
    return 0;
}

顺便说一句,我收到如下警告

1>d:\02_visualstudio2008projects\displaygreek\displaygreek\displaygreek.cpp(5) : warning C4566: character represented by universal-character-name '\u03A6' cannot be represented in the current code page (1252)

【问题讨论】:

  • 我相信this 会回答你的问题。
  • 好的,但是合适的代码页是什么?
  • 我会将其添加为答案,以便您(也许)接受它。
  • @phantom 请简单地标记为重复。

标签: c++ visual-studio-2008


【解决方案1】:

有两种方法可以解决这个问题。

方法 #1:嵌入式 unicode

这对于那些有允许直接输入 unicode 字符的键盘的人很有用。你可以像这样定义一个变量:

char a = 'ф';

所有这些要求是将源文件的编码设置为 UTF-8。

方法 #2:通用字符名称 (UCN)

使用此方法,您可以使用编码形式 \u#,其中 # 是 UCN。

char a = '\u0444';

查找 UCN 值的好地方是here

取自here的一些代码示例。

【讨论】:

  • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会失效。
  • @Seitaridis 我很抱歉。我对抄袭很偏执。我将编辑我的答案。
  • 我猜,字符串将被视为 char 数组,是这样吗?顺便说一句,有 3 个 UTF-8 代码页可用,它们都产生与以前使用希腊代码页相同的丑陋输出。
  • @DimZon 这可能是由于您的控制台的字体不支持 unicode...不一定是编码错误。
  • 我如何查看这个?
猜你喜欢
  • 2011-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-19
相关资源
最近更新 更多