我发现字符串存在#0(就一个#0),然后让这个字符与其他字符连接,结果#0还在
var
  s1,s2,s3:string;
begin
  s1:='234';
  s2:=#0;
  s3:= s1+s2+s1+s2;
  ShowMessage(IntToStr(Length(s3)));   //结果=8
  ShowMessage(s3);                     //结果=234
end;这就坑爹了。。,字符串长度8,用的时候只有3想问问有没有办法在字符串相加的时候去掉#0(#0个数还不一定)分少请见谅String

解决方案 »

  1.   

    我在csdn这边提出问题总是没有得到答案。。,是我问题太偏了吗?实在抱歉
      

  2.   

    #0除了delphi,其他的工具都作为字符串的结束符号。转换很简单,
    s3:= string(pchar(s1))+string(pchar(s2))+string(pchar(s1))+string(pchar(s2));这样就可以了,不过如果字符串中间有#0,他会去掉#0后面的字符。
      

  3.   

    补充一下,delphi的字符串够简单的了,其他的都不如他,不过兼容性太差,做动态库还得用pchar
      

  4.   


    顶下那个马可.肯图在他的书"DELPHI高级编程"里专门说了各种字符串处理,有的话可以参考下(这书比较早,相应于delphi3,呵)