3

我正在尝试在控制台中打印一些“特殊”字符(127 以上),但不知何故它没有被打印出来。

我有这个小代码片段:

#include <iostream>
int main()
{
    std::wcout << L"a■■■■■■■■■■■a■■■■■■■■■■■■■■a" << std::flush;
    return 0;
}

它打印'a',但然后......什么都没有。我使用 cout/string 还是 wcout/wstring 都没关系。(使用 cout 我只看到“?”而在 wcout 中什么也没有,它结束了流)

这个字符的ASCII码是254。这里会发生什么?我认为这可以打印吗?

4

1 回答 1

3

根据我在评论中链接的答案,我认为这是您的解决方案:

#include <fcntl.h>
#include <io.h>

_setmode(_fileno(stdout), _O_U8TEXT);
于 2013-10-12T17:53:16.417 回答