如何使用一个字符串打印此unicode行?

时间:2013-04-05 21:47:47

标签: c++

我遇到了特定Unicode字符的问题。

假设我要打印出Október: O = U + 00F3

setlocale(LC_ALL, "");
cout << "\xF3"; //this prints ó
cout << "Okt\xF3"; //this prints Októ
cout << "Okt\xF3ber"; //this prints Oktľr

我知道打印出Október的唯一方法是:

cout << Okt\xF3 << ber;

如何创建打印Október的刺痛?

2 个答案:

答案 0 :(得分:1)

使用

cout << "Okt\xF3\x62\x65r";

十六进制转义序列尽可能地扩展,因此有效十六进制数字的'b''e'包含在转义序列中。

答案 1 :(得分:1)

您可以使用编译时字符串连接来防止转义序列超出您的期望:

cout << "Okt\xF3" "ber";