![]() |
1
5
这个卑鄙的把戏是行不通的。 首先,在此之后掩码的值是多少:
也许您正在混合十六进制表示法和二进制表示法。 其次,正如您在utf-8编码中正确地说的,一个字符可能有几个字节长。 但实际上您需要的是查看每个字符的前导字节,并跳过其余部分,直到下一个字符出现。 要实现一个单独的循环来进行计算并向前跳跃并不困难 对前导字节使用简单掩码表。 最后,检查字符时会得到相同的O(n),它将适用于每个UTF8字符串。 |
![]() |
2
1
|
![]() |
3
0
我们也是这样处理的 OpenLieroX (我认为这在游戏中非常好)。 对于这样的UTF-8 std::string,我们有一系列有用的函数/算法。看见 Unicode.h 和 Unicode.cpp . 例如,有UTF8迭代器、一些简单的操作操作符(插入或擦除)、大写/小写转换、与大小写无关的搜索等。
|
![]() |
donefun · 在PHP中将波兰语字符存储为变量 2 年前 |
![]() |
AFX · 这是AES密钥的有效字节字符串吗? 6 年前 |
|
jubimk4 · UTF-8中的PUPPET无效字节序列 7 年前 |
![]() |
user3286053 · utf-8在列表中搜索单词 7 年前 |