funzioni di libreria C - memmove ()
C libreria standard - <string.h>
descrizione
C funzioni di libreriavoid * memmove (void * str1, const void * str2, size_t n) Le copie ncaratteri dastr2astr1,ma sovrapposte blocco di memoria a questo proposito, memmove () di memcpy () il metodo più sicuro. Se l'area di destinazione e l'area di sovrapposizione fonte, quindi, memmove () per assicurare che la stringa sorgente prima è coperto con regioni sovrapposte byte copiati l'area di destinazione, il contenuto dell'area sorgente copiato verrà cambiata. Se l'area di destinazione e l'area di origine non si sovrappone, la funzione e memcpy () è la stessa funzione.
dichiarazione
Ecco memmove () la dichiarazione della funzione.
void *memmove(void *str1, const void *str2, size_t n)
parametri
- str1 - punto alla matrice di destinazione per la memorizzazione dei contenuti copiati, cast di tipo di annullare puntatori *.
- str2 - indicando copiare il codice sorgente di dati, il tipo di getto di annullare puntatori *.
- n - ilnumero di byte da copiare.
Valore di ritorno
Questa funzione restituisce un puntatore al negozio di destinazione puntatore str1.
Esempi
L'esempio seguente mostra memmove (viene utilizzata la funzione).
#include <stdio.h> #include <string.h> int main () { const char dest[] = "oldstring"; const char src[] = "newstring"; printf("Before memmove dest = %s, src = %s\n", dest, src); memmove(dest, src, 9); printf("After memmove dest = %s, src = %s\n", dest, src); return(0); }
Facciamo compilare ed eseguire il programma di cui sopra, che si tradurrà in quanto segue:
Before memmove dest = oldstring, src = newstring After memmove dest = newstring, src = newstring