此代码适用于 Windows 以在控制台中启用 unicode 16(为了编写):它使用 io.h 来工作
_setmode(_fileno(stdout), _O_U16TEXT);
在 linux 上,我尝试包含 sys/io.h 以使其工作,但它仍然给我错误:
_fileno 未在此范围内声明
_O_U16TEXT 未在此范围内声明
_setmode 未在此范围内声明
我已经在互联网上搜索过,但找不到解决方案,也许你可以帮我解决这个问题!
您需要更多信息吗?
操作系统:Windows 10 和 raspberry pi 2b 运行 rasbian,没有 gui
编译器:g++
谢谢
最佳答案
你相信 std::cout << "█"<< std::endl; 吗?如果你的 C++ 文本编辑器使用 UTF-8 编码,那就是她写的全部。获取任何 Unicode 字符,获取它的 UTF-8 编码,然后使用它。 ——山姆·瓦尔沙夫奇克
关于c++ - 在 Linux 上启用 Unicode 16,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53694462/