我正在制作一个程序来实现异或加密,在玩弄我的程序时,我输入了各种组合键,程序运行良好,直到我输入键值:904932,这会导致省略“d”字符,例如,如果我输入“嗨,我的名字”是dexter,我讨厌edit1中的愚蠢妹妹dede',加密和解密回来将使我的edit1文本:'嗨,我的名字是exter,我讨厌我的愚蠢妹妹ee'这是怎么回事?
procedure TForm2.Button1Click(Sender: TObject);
var
c:char;
i,key: integer;
begin
s := edit1.Text;
edit1.Text := #0;
key := strtoint(edit2.text);
key := key + 128;//i am adding 128 so that i dont get NULL char
for I := 1 to length(s) do {or 0 to lenght(s)? i dont know}
begin
c := s[i];
c := char(ord(c) xor key);
edit1.Text := edit1.Text + c;
end;
end;