linyawen

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

delphi 的pos函数中文下有bug.

正常情况下:

  pos('a','abc')  返回 1;

bug示范,中文情况下:

  pos('胺','包装服务')=4  (⊙﹏⊙b汗);

  因为 s :='胺'; s[1]=#176,s[2]=#183;

            s2 := '包装服务';

  s2[4] = #176('装'第二个字节);s2[5] =#183('服'第一个字节); 因此错误判断。呵呵。

注意:补充: 如果想要在中文环境下正确使用pos ,那就用widestring。

 这个问题 估计很少人发现~~~~~(以上测试均在delphi7 里完成-_-|||)

posted on 2011-12-26 11:18  linyawen  阅读(3975)  评论(0编辑  收藏  举报