var
  s, k: char;
  i: integer;
  lstr: String;
  mystr: WideString;
begin
   lstr := '';
   myStr := edit1.Text;   for i := 1 to length(mystr)  do
   begin
     s := char((ord(mystr[i]) xor 5787) mod 127);
     lstr := lstr + vartostr(s);
  end;    edit2.text := lstr;当我输入 zengq123的时候,返回的结果是:#$F',#*'#$18'WVU',其中#$F不是字符串里的,不知道是怎么加上的,我估计是内存分配的有问题,现在想要返回正常的结果,但是不知道怎么解决,请各位帮帮忙呀。