Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
Delphi 12 Athens
|
AW: StrLCopy : Non VCL
28. Apr 2012, 02:44
Oder lstrcpyn ( Unit Windows)
@hathor: Deine Funktion vergißt die abschließende #0 mitzuzählen.
Delphi-Quellcode:
/// <description> copies a specified maximum number of characters from Source to Dest </description>
function StrLCopy(Dest, Source: PChar; MaxLen: NativeUInt): PChar;
begin
Dec(MaxLen); // für die abschließende #0
if NativeInt(MaxLen) < 0 then
Exit( nil);
Result := Dest;
while (MaxLen > 0) and (Source^ <> #0) do begin
Dest^ := Source^;
Inc(Source);
Inc(Dest);
Dec(MaxLen);
end;
Dest^ := #0;
end;
$2B or not $2B
|