Einzelnen Beitrag anzeigen

Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.487 Beiträge
 
Delphi 12 Athens
 
#11

Re: TBigUInt - Noch ein Datentyp für große Zahlen

  Alt 27. Mai 2009, 10:34
Vorschlag für StrToInt:
Delphi-Quellcode:
uses
  SysConst;

function StrToInt(const S: String): TBigUInt;
var
  n: String;
  i: Integer;
  c: char;
begin
  {Leerzeichen am Anfang und Ende entfernen}
  n := Trim(s);

  if Length(n) = 0 then
    raise EConvertError.CreateResFmt(@SInvalidInteger, [S]);

  Result := 0;
  for i := 1 to Length(n) do
  begin
    c := n[i];
    if (c < '0') or (c > '9') then
      raise EConvertError.CreateResFmt(@SInvalidInteger, [S]);

    Result := Result * 10 + (Ord(c) - Ord('0'));
  end;
end;
Auf jeden Fall sollten auch negative Zahlen unterstützt werden, sonst ist der Typ zu sehr eingeschränkt.

Edit: n[1] durch n[i] ersetzt
gut das einer aufpasst
  Mit Zitat antworten Zitat