1
12
我将进行一次传递,将字节反转,然后进行第二次传递,将任何多字节字符中的字节(很容易在UTF8中检测到)反转回正确的顺序。 你完全可以在一次传球中完成这个动作,但是我不会费心,除非常规赛变成了瓶颈。 |
2
7
此代码假定输入的utf-8字符串有效且格式良好(即每个多字节字符最多4个字节):
如果编译此程序(示例名称:
如果代码太神秘,我会很高兴地澄清。 |
3
6
同意你的方法是唯一明智的方法。 就我个人而言,我不喜欢在每个处理它的函数中重新验证utf8,而且通常只做避免崩溃所需的事情;它加起来的代码要少得多。不需要太多C所以这里是C: ( 编辑以消除strlen )
|
4
5
我的初步方法可以概括如下: 1)简单地反转字节 2)向后运行字符串,并在执行过程中修复utf8序列。 在第二步和第一步中处理非法序列,我们检查字符串是否处于“同步”状态(即,如果字符串以合法的前导字节开头)。 编辑:改进了反向()中前导字节的验证
|
5
-3
最佳解决方案:
从不,从不,从不,从不将单个字节视为字符。 |
Dima Malko · 如何在指定符号前添加符号? 2 年前 |
shekharsabale · 从列表元素捕获子字符串 2 年前 |
Manny · 如何比较Perl中的字符串? 2 年前 |
Manan Girdhar · 拆分字符串并仅在java中使用第二部分 2 年前 |
AnxiousLuna · Python使用len()获取数组索引数 2 年前 |
antonoyaro8 · 数据帧中每列上的Grepl 2 年前 |