while(i < 8)
{
szPwd[i] -= (char) 32 ;
szPwd[i] ^= (char) (i+1);
szPwd[i] ^= (char) 12; // Key= 12
szPwd[i] += (char) 32;
i++;
}
翻译成pascal语言,谢谢先了!
{
szPwd[i] -= (char) 32 ;
szPwd[i] ^= (char) (i+1);
szPwd[i] ^= (char) 12; // Key= 12
szPwd[i] += (char) 32;
i++;
}
翻译成pascal语言,谢谢先了!
begin
Dec(szPwd[i], 32);
szPwd[i]:=szPwd[i] xor (i + 1);
szPwd[i]:=szPwd[i] xor 12;
Inc(szPwd[i], 32);
Inc(i);
end;Char:while i < 8 do
begin
Dec(szPwd[i], 32);
szPwd[i] := Char(Byte(szPwd[i]) xor (i + 1));
szPwd[i] := Char(Byte(szPwd[i]) xor 12);
Inc(szPwd[i], 32);
Inc(i);
end;
var
i : integer ;
temp_char : string ;
begin
if (Edit2.GetTextLen()=8) then
begin
temp_char := Edit2.Text ;
i :=0 ;
while i < 8 do
begin
Dec(temp_char[i],32);
temp_char[i] := char(Byte(temp_char[i]) Xor (i+1));
temp_char[i] := char(Byte(temp_char[i]) Xor 12); // Key= 12
Inc(temp_char[i],32);
Inc(i);
end;
ShowMessage(temp_char);
Button1.SetFocus(); end;end;
输入12345678输出应该是八个<即:<<<<<<<<,可是我将i从1开始的时候结果是?=;=3=了!
=>
i := 1;while i < 8 do
=>
while i <= 8 do
输入12345678时,输出应该是八个'<'字符的
temp_char[i] := char(Byte(temp_char[i]) Xor (i+));
=>
temp_char[i] := char(Byte(temp_char[i]) Xor (i));或者其它不做修改
temp_char: string;
=>
temp_char: array[0..255] of char;