![]() |
StrToInt für "normale Zahlen" (nicht hexadezimale
In dem Thread
![]()
Delphi-Quellcode:
...:cat:...
function ValNoHex(const s: String; var code: Integer): Longint;
var I: Integer; Negative: Boolean; begin I := 1; code := -1; Result := 0; Negative := False; while (I <= Length(s)) and (s[I] = ' ') do Inc(I); if I > Length(s) then Exit; case s[I] of '-': begin Negative := True; Inc(I); end; '+': begin Inc(I); end; end; while I <= Length(s) do begin if (Result > (High(Result) div 10)) or (not (s[I] in ['0'..'9'])) then begin code := I; Exit; end; Result := Result * 10 + Ord(s[I]) - Ord('0'); Inc(I); end; if Negative then begin Result := -Result; end; code := 0; end; function StrToIntNoHex(S: string): Longint; var E: Integer; begin Result := ValNoHex(S, E); if E <> 0 then raise EConvertError.CreateResFmt(@SInvalidInteger, [S]); end; function StrToIntDefNoHex(S: string; Default: LongInt): Longint; var E: Integer; begin Result := ValNoHex(S, E); if E <> 0 then Result := Default; end; [edit=Chakotay1308]Klassifizierung. Mfg, Chakotay1308[/edit] |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz