MEMMOVE

Die Funktion MEMMOVE verwenden Sie, um Werte von einem Speicherbereich in einen anderen zu kopieren, die Speicherbereiche dürfen sich dabei überlappen.
Hinweis | |
Systemabsturz oder Zugriff auf unerlaubte Speicherbereiche Weil mit der Funktion direkt auf den physikalischen Speicher zugegriffen wird, ist bei deren Anwendung besondere Vorsicht geboten. Falsche Parameterwerte können zu einem Systemabsturz oder einem Zugriff auf unerlaubte Speicherbereiche führen. |
FUNCTION MEMMOVE : UDINT
Eingänge
VAR_INPUT
destAddr : PVOID;
srcAddr : PVOID;
n : UDINT;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
destAddr | PVOID | Anfangsadresse des Ziel-Speicherbereichs. |
srcAddr | PVOID | Anfangsadresse des Quell-Speicherbereichs. |
n | UDINT | Anzahl der zu kopierenden Bytes. |
Die Funktion kopiert n-Bytes ab dem Speicherbereich mit der Anfangsadresse srcAddr in den Speicherbereich mit der Anfangsadresse destAddr.
Rückgabeparameter | Bedeutung |
---|---|
0 | Falsche Parameterwerte. destAddr == 0 oder srcAddr == 0 oder n == 0 |
> 0 | Bei Erfolg, die Anzahl der kopierten Bytes (n). |
Beispiel für einen Aufruf in FUP:
PROGRAM MAIN
VAR
Buffer1 : ARRAY[0..3] OF BYTE;
Buffer2 : ARRAY[0..3] OF BYTE;
MoveResult : UDINT;
END_VAR
Im Beispiel werden 4 Byte vom Buffer2 nach Buffer1 verschoben.
Voraussetzungen
Entwicklungsumgebung | Zielplattform | Einzubindende SPS-Bibliotheken (Kategoriegruppe) |
---|---|---|
TwinCAT v3.1.0 | PC oder CX (x86, x64, ARM) | Tc2_System (System) |