1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
const PreCalcResult : Array [96..115] of char =
({96}'0','1','2','3'
,'4','5','6','7','8','9','0','1','2','3'
,'4','5','6','7','8','9');
Function Addition2EBVbis(Const s1: String; Const s2: String; Len: Cardinal): String;
Var
i : integer;
retenue : byte;
offset : integer;
p:PChar;
Begin
SetLength(result,len);
p:=@Result[len];
retenue := 0;
For i := len Downto 1 Do
Begin
offset := integer(S1[i]) + integer(S2[i]) + retenue;
P^ := PreCalcResult[offset];
retenue := byte(offset>= 109);
dec(p);
End;
End; |
Partager