相关疑难解决方法(0)

C++ 11中支持Unicode的程度如何?

我读过并听说C++ 11支持Unicode.关于这一点的一些问题:

  • C++标准库如何支持Unicode?
  • 难道std::string做自己应该?
  • 我该如何使用它?
  • 潜在的问题在哪里?

c++ unicode c++11

176
推荐指数
5
解决办法
7万
查看次数

获取UTF-8编码的std :: string的实际长度?

我的std :: string是utf-8编码所以很明显,str.length()返回错误的结果.

我发现了这些信息,但我不确定如何使用它来执行此操作:

以下字节序列用于表示字符.要使用的序列取决于字符的UCS代码编号:

   0x00000000 - 0x0000007F:
       0xxxxxxx

   0x00000080 - 0x000007FF:
       110xxxxx 10xxxxxx

   0x00000800 - 0x0000FFFF:
       1110xxxx 10xxxxxx 10xxxxxx

   0x00010000 - 0x001FFFFF:
       11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
Run Code Online (Sandbox Code Playgroud)

如何找到UTF-8编码的std :: string的实际长度?谢谢

c++ algorithm

32
推荐指数
5
解决办法
3万
查看次数

C++子串多字节字符

我有这个std :: string,其中包含一些跨越多个字节的字符.

当我对此字符串执行子字符串时,输出无效,因为当然,这些字符计为2个字符.在我看来,我应该使用wstring,因为它将这些字符存储为一个元素而不是更多.

所以我决定将字符串复制到wstring中,但是当然这没有意义,因为字符仍然分为2个字符.这只会让情况变得更糟.

将字符串转换为wstring有一个很好的解决方案,将特殊字符合并为1个元素而不是2个元素.

谢谢

c++ character-encoding wstring

4
推荐指数
2
解决办法
7244
查看次数

标签 统计

c++ ×3

algorithm ×1

c++11 ×1

character-encoding ×1

unicode ×1

wstring ×1