So kopieren Sie Arrays mit Memmove in der C -Programmierung

So kopieren Sie Arrays mit Memmove in der C -Programmierung
Arrays sind ein grundlegendes Element in der C -Programmiersprache, mit dem ein Programmierer zahlreiche Elemente desselben Datentyps in einer einzigen Variablen speichern kann. Es gibt Zeiten, in denen ein Programmierer möglicherweise den Inhalt eines Arrays auf ein anderes replizieren muss.

Was ist die Memmove () -Funktion

Die C -Bibliotheksfunktion memmove () wird verwendet, um eine bestimmte Anzahl von Bytes von einer Speicheradresse an eine andere zu kopieren. Aufgrund der Tatsache, dass es durch überlappende Datenbereiche nicht beeinflusst wird, ist es eine effektive und produktive Technik zum Kopieren von Daten. Beim Benutzen memmove () Um ein Array zu kopieren, gibt es einige Dinge zu beachten. Die Funktion muss zuerst zwei Zeiger erhalten. Die Menge der Bytes, die Sie von der Quelle zum Ziel kopieren möchten, muss ebenfalls angegeben werden.

Der memmove () Die Methode ist eine flexible Funktion, die über überall im Speicher überlappende Quellen verarbeiten und Daten in jeder Reihenfolge kopieren kann. Der einzige Nachteil ist, dass es etwas länger dauert als andere Kopiermethoden wie memcpy ().

So kopieren Sie Arrays mit Memmove () in C -Programmierung

Der memmove () Funktion ist in der definiert Bibliothek und hat die Syntax:

void *memmove (void *dest, const void *src, size_t n);

Der Zeiger void* dest Gibt das Ziel -Array an, dem der Inhalt des Quellarrays kopiert wird. Der Zeiger auf das Quellarray, das wir kopieren möchten, ist const void* src. Die Anzahl der Bytes, die wir aus dem Quellarray zum Zielarray kopieren möchten, wird durch das Argument angegeben size_t n.

Schauen Sie sich beispielsweise die folgende Codezeile an:

#enthalten
#enthalten
int main ()
int source_array [] = 1, 2, 3, 4, 5;
int destination_array [5] = 0;
size_t size = sizeof (Source_Array);
memmove (destination_array, source_array, Größe);
für (int i = 0; i < 5; i++)
printf ("%d", destination_array [i]);

Rückkehr 0;

Das Quell -Array- und Ziel -Array -Arrays werden zuerst im obigen Code definiert. Das Ziel -Array ist ursprünglich leer, aber das Quellarray enthält Elemente 1 bis 5. Der Größe von() Der Bediener wird dann verwendet, um die Größe des Quellarrays zu bestimmen, und das Ergebnis wird in der Größenvariablen gespeichert. Der Inhalt des Quellarrays wird über das Ziel -Array kopiert.

Ausgang

Abschluss

Die C -Programmiersprache C bietet eine effektive und zuverlässige Möglichkeit, Arrays mit dem zu kopieren memmove () Funktion. Die Vielseitigkeit beruht auf der Fähigkeit, überlappendem Speicher zu handhaben, und aufgrund seiner einfachen Syntax kann jedes C -Projekt es verwenden.