Cita:
Empezado por xander
me sugería que cambiara mis llamadas a Uppercase por llamadas a AnsiUppercase y lo mismo para los equivalentes en lowercase, porque según es más rápido...
|
según la vcl:
Código Delphi
[-]function AnsiUpperCase(const S: string): string;
{$IFDEF MSWINDOWS}
var
Len: Integer;
begin
Len := Length(S);
SetString(Result, PChar(S), Len);
if Len > 0 then
CharUpperBuff(Pointer(Result), Len);
end;
{$ENDIF}
{$IFDEF LINUX}
begin
Result := WideUpperCase(S);
end;
{$ENDIF}
Y la otra, tiene más líneas de código... por decir algo.
Código Delphi
[-]
function UpperCase(const S: string): string;
var
Ch: Char;
L: Integer;
Source, Dest: PChar;
begin
L := Length(S);
SetLength(Result, L);
Source := Pointer(S);
Dest := Pointer(Result);
while L <> 0 do
begin
Ch := Source^;
if (Ch >= 'a') and (Ch <= 'z') then Dec(Ch, 32);
Dest^ := Ch;
Inc(Source);
Inc(Dest);
Dec(L);
end;
end;