Co to jest funkcja memmove().
Funkcja biblioteki C pamiętnik() służy do kopiowania określonej liczby bajtów z jednego adresu pamięci do drugiego. Dzięki temu, że nie ma na nią wpływu nakładanie się obszarów danych, jest efektywną i produktywną techniką kopiowania danych. Podczas używania pamiętnik() aby skopiować tablicę, należy pamiętać o kilku rzeczach. Funkcja musi najpierw otrzymać dwa wskaźniki, jeden reprezentujący lokalizację pamięci źródłowej, a drugi lokalizację pamięci docelowej. Należy również określić ilość bajtów, które chcesz skopiować ze źródła do miejsca docelowego.
The pamiętnik() Metoda jest elastyczną funkcją, która może obsługiwać nakładające się źródła i kopiować dane w dowolnej kolejności z dowolnego miejsca w pamięci. Jedyną wadą jest to, że zajmuje to trochę więcej czasu niż inne metody kopiowania, takie jak memcpy().
Jak kopiować tablice za pomocą memmove() w programowaniu w C
The pamiętnik() funkcja jest zdefiniowana w
próżnia * pamiętnik ( próżnia * początek , konst próżnia * źródło , rozmiar_t N ) ;
Wskaźnik pustka* cel określa tablicę docelową, do której zostanie skopiowana zawartość tablicy źródłowej. Wskaźnik do tablicy źródłowej, którą chcemy skopiować, to const nieważne* src . Argument określa liczbę bajtów, które chcemy skopiować z tablicy źródłowej do tablicy docelowej rozmiar_t rz .
Spójrz na przykład na następujący wiersz kodu:
#include
#include <łańcuch.h>
int główny ( ) {
int tablica_źródłowa [ ] = { 1 , 2 , 3 , 4 , 5 } ;
int tablica_celowa [ 5 ] = { 0 } ;
rozmiar_t rozmiar = rozmiar ( tablica_źródłowa ) ;
pamiętnik ( tablica_celowa , tablica_źródłowa , rozmiar ) ;
Do ( int I = 0 ; I < 5 ; I ++ ) {
drukujf ( '%D ' , tablica_celowa [ I ] ) ;
}
powrót 0 ;
}
Tablica źródłowa i tablica docelowa są najpierw zdefiniowane w powyższym kodzie. Tablica docelowa jest początkowo pusta, ale tablica źródłowa zawiera elementy od 1 do 5. The rozmiar() Operator jest następnie używany do określenia rozmiaru tablicy źródłowej, a wynik jest zapisywany w zmiennej size. Zawartość tablicy źródłowej jest kopiowana do tablicy docelowej.
Wyjście
Wniosek
Język programowania C oferuje skuteczny i niezawodny sposób kopiowania tablic za pomocą pamiętnik() funkcjonować. Jego wszechstronność wynika z możliwości obsługi nakładającej się pamięci, a dzięki prostej składni każdy projekt C może z niego korzystać.