Код:
function RusCase(const S: string; updown: string): string;
var
Ch: Char;
L: Integer;
Source, Dest: PChar;
begin
if updown = 'up' then
begin
L := Length(S);
SetLength(Result, L);
Source := Pointer(S);
Dest := Pointer(Result);
while L <> 0 do
begin
Ch := Source^;
if (Ch >= 'а') and (Ch <= 'я') then Dec(Ch, 32);
Dest^ := Ch;
Inc(Source);
Inc(Dest);
Dec(L);
end;
end
else
if updown = 'down' then
begin
L := Length(S);
SetLength(Result, L);
Source := Pointer(S);
Dest := Pointer(Result);
while L <> 0 do
begin
Ch := Source^;
if (Ch >= 'А') and (Ch <= 'Я') then Inc(Ch, 32);
Dest^ := Ch;
Inc(Source);
Inc(Dest);
Dec(L);
end;
end;
end;
чего тут не так? попробовал - не работает, хотя компилит..