如何使用UTF-8字符序列在C ++中初始化const char *和/或const std :: string?

时间:2010-10-07 11:44:08

标签: c++ utf-8

如何使用UTF-8字符序列在C ++中初始化const char *和/或const std :: string?

我正在使用一个接受UTF8字符串作为const char *的正则表达式API。初始化代码应该与平台无关。

2 个答案:

答案 0 :(得分:7)

这适用于任何编译器:

const char* twochars = "\xe6\x97\xa5\xd1\x88";

答案 1 :(得分:2)

编译器 - 独立答案也是: 将文件保存为UTF-8 ,无BOM 签名编码。

const char* c = "ěščř"; //Just save the file in UTF-8 without BOM signature.

(见问题评论。)
顺便说一句,Windows控制台必须设置为UTF8。有关详细信息,请参阅post question