08/03/28 05:27:30
1文字目は1バイト目から始まり、
3文字目は4バイト目から始まるって意味か。
>>138
こんなんでどうだ?(未チェック) 16進数が必要なら自分でやって。
function StrToInt(const Str: string): Integer;
var
I: Integer;
P: PChar;
Minus: Boolean;
begin
Result := 0;
Minus := False;
P := PChar(Str);
if P^ in ['+', '-'] then
begin
Minus := P^ = '-';
Inc(P);
end;
while P^ <> #0 do
begin
if not (P^ in ['0'..'9']) then raise Exception.Create('変換エラー'); // EConvertみたいなのあったかも。
Result := Result * 10 + Ord(P^) - Ord('0');
Inc(P);
end;
if Minus then Result := Result * -1;
end;