Otevřít hlavní menu

StrMove

Verze z 8. 10. 2012, 16:55, kterou vytvořil Zdeno Sekerák (diskuse | příspěvky) (Vytvorená stránka „Zkopíruje znaky z jednoho řetězce do druhého. ;Deklarace function StrMove(Dest, Source: PChar; Count: Word): PChar; ;Režim :Windows, Reálný, Chráněný ;Pozn...“)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)

Zkopíruje znaky z jednoho řetězce do druhého.

Deklarace
function StrMove(Dest, Source: PChar; Count: Word): PChar;
Režim
Windows, Reálný, Chráněný
Poznámky
StrMove zkopíruje přesně Count znaků ze Source do Dest a vrátí Dest. Source a Dest se mohou překrývat.


Vzorový příklad

{StrMove.PAS}
{Vzorový příklad pro StrMove a StrDispose.}
{ Allokuje řetězec na haldě }
uses Strings;
function StrNew(S: PChar): PChar;
var
  L: Word;
  P: PChar;
begin
 StrNew := nil;
 if (S <> nil) and (S[0] <> #0) then
  begin
    L := StrLen(S) + 1;
    GetMem(P, L);
    StrNew := StrMove(P, S, L);
  end;
end;
{ Uvolní řetězec z haldy }
procedure StrDispose(S: PChar);
begin
  if S <> nil then FreeMem(S, StrLen(S) + 1);
end;
var
  S: PChar;
begin
  StrNew (S);
  StrDispose (S);
end.