gpt4 book ai didi

C++ UTF-8 字符串

转载 作者:太空宇宙 更新时间:2023-11-04 13:10:33 24 4
gpt4 key购买 nike

我正在阅读 Bjarne Stroustrup 的“The C++ programming language”,在第 7.3.2.2 节中通过打印说明:

u8"the officials vowels in Danish are:a, e, i o, u, \u00E6, \u00F8, \u00E5 and y."

你会得到:

the officials vowels in Danish are:a, e, i o, u, æ, ø, å and y.

但是,如果我在自己的机器上尝试这个,我会得到这个:

the officials vowels in Danish are:a, e, i o, u, ├Ž, ├Ş, ├ą and y.

我做错了什么?

最佳答案

由于某些原因,Windows 在控制台中默认不使用 UTF-8。

按照建议运行 chcp 65001 应该可以工作(65001 是 UTF-8 的 code page)。

或者我以编程方式使用:

#ifdef _WIN32
if( !SetConsoleOutputCP( CP_UTF8 ) )
throw "Setting Windows console to UTF-8 codepage failed!";
#endif

PS:IIRC 我在使用 cout 时也遇到了问题(可能是由于 locale)。但是 printf() 适合我。

关于C++ UTF-8 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40183804/

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