Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Przenosi jeden bufor do drugiego. Dostępne są bezpieczniejsze wersje tych funkcji; zobacz memmove_s, wmemmove_s.
Składnia
void *memmove(
void *dest,
const void *src,
size_t count
);
wchar_t *wmemmove(
wchar_t *dest,
const wchar_t *src,
size_t count
);
Parametry
dest
Obiekt docelowy.
src
Obiekt źródłowy.
count
Liczba bajtów () lub znaków (memmovewmemmove) do skopiowania.
Wartość zwracana
Wartość dest.
Uwagi
Kopiuje bajty count () lub znaki (wmemmovememmove) z src do dest. Jeśli niektóre części źródła i regionów docelowych nakładają się na siebie, obie funkcje zapewniają skopiowanie oryginalnych bajtów źródłowych w nakładających się regionach przed zastąpieniem.
Uwaga zabezpieczeń Upewnij się, że bufor docelowy jest wystarczająco duży, aby pomieścić liczbę przeniesionych znaków. Aby uzyskać więcej informacji, zobacz Unikanie przekroków buforu.
memmove Funkcje i wmemmove są przestarzałe tylko wtedy, gdy stała _CRT_SECURE_DEPRECATE_MEMORY jest zdefiniowana przed instrukcją #include , jak pokazano w poniższym przykładzie:
#define _CRT_SECURE_DEPRECATE_MEMORY
#include <string.h>
lub
#define _CRT_SECURE_DEPRECATE_MEMORY
#include <wchar.h>
Wymagania
| Procedura | Wymagany nagłówek |
|---|---|
memmove |
<string.h> |
wmemmove |
<wchar.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Przykład
// crt_memcpy.c
// Illustrate overlapping copy: memmove
// always handles it correctly; memcpy may handle
// it correctly.
//
#include <memory.h>
#include <string.h>
#include <stdio.h>
char str1[7] = "aabbcc";
int main( void )
{
printf( "The string: %s\n", str1 );
memcpy( str1 + 2, str1, 4 );
printf( "New string: %s\n", str1 );
strcpy_s( str1, sizeof(str1), "aabbcc" ); // reset string
printf( "The string: %s\n", str1 );
memmove( str1 + 2, str1, 4 );
printf( "New string: %s\n", str1 );
}
The string: aabbcc
New string: aaaabb
The string: aabbcc
New string: aaaabb
Zobacz też
Manipulowanie buforem
_memccpy
memcpy, wmemcpy
strcpy, , wcscpy_mbscpy
strncpy, , _strncpy_l, wcsncpy, _wcsncpy_l, , _mbsncpy_mbsncpy_l