gpt4 book ai didi

c++ - 如何在 Windows 控制台中打印 MACRON/Unicode

转载 作者:行者123 更新时间:2023-11-28 04:23:37 26 4
gpt4 key购买 nike

所以目前我最近经常使用 Unicode。我见过其他人面临同样的问题,但到目前为止没有答案解决我的问题。

目前的目标是能够打印:¯在我的 Windows 控制台窗口中。该字符称为“MACRON”,其Unicode编号为U+00AF。

一开始我简单的写了:cout << "some irrelevant text lorem ipsum etc... \u00AF" << endl;

但这最终适得其反,Windows 控制台窗口显示怪异的难以形容的丑陋(无冒犯)看起来像 T。

我也尝试过使用 wcout wcout << L"some more irrelevant text lorem ipsum etc... \u00AF" << endl; 但结果是一样的。

关于为什么我的源代码/控制台窗口无法打印 MACRON 字符有什么想法吗?

这个字符的修复很好,但总的来说,我会遇到越来越奇怪的 Unicode 字符,所以我可能需要一个更广泛的适用解决方案,无需下载/更改源代码之外的任何内容。

在 Code::Blocks 17.12 IDE 中使用 C++ 编程

最佳答案

使用 _setmode(..., _O_U16TEXT);

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

...

_setmode(_fileno(stdout), _O_U16TEXT);
std::wcout << L"\u00AF\n";

请务必阅读文档页面上的注意事项,以确保您对使用它的权衡感到满意(例如,普通 printf 将不再在该模式下工作):

https://learn.microsoft.com/en-us/cpp/c-runtime-library/reference/setmode?view=vs-2017

关于c++ - 如何在 Windows 控制台中打印 MACRON/Unicode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54945172/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com