Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

memmove - Bytes von überlappenden Speicherbereichen kopieren

&pagelevel(4)&pagelevel

Definition

#include <string.h>

void *memmove(void *s1, const void *s2, size_t n);

Beschreibung

memmove() kopiert die ersten n Bytes des Speicherbereiches, auf den s2 zeigt, in den Speicherbereich, auf den s1 zeigt. memmove() kopiert die n Bytes zunächst in ein temporäres Feld, das die Speicherbereiche s1 und s2 nicht überlappt, und anschließend erst in den Speicherbereich s1.

s1 ist ein Zeiger auf den Speicherbereich, in den kopiert werden soll.

s2 ist ein Zeiger auf den Speicherbereich, aus dem die ersten n Bytes kopiert werden sollen.

n ist ein ganzzahliger Wert, der die Anzahl der zu kopierenden Bytes in s2 angibt.

Returnwert

Zeiger auf den Speicherbereich s1

 


bei Erfolg.

Hinweise

Die Funktion eignet sich für die Bearbeitung von Zeichenvektoren, die im Unterschied zu Zeichenketten nicht mit dem Nullbyte (\0) abgeschlossen sein brauchen.

Im Unterschied zu memcpy() funktioniert memmove() auch mit Speicherbereichen, die sich überlappen.

Siehe auch

memcpy(), string.h.