Функция memmove () в C ++ копирует указанные байты данных из источника в место назначения.
memmove () прототип
void * memmove (void * dest, const void * src, size_t count);
memmove()
Функция принимает три аргумента: Dest, ЦСИ и подсчет. Когда memmove()
функция вызывается, она копирует count байтов из области памяти, на которую указывает src, в область памяти, на которую указывает dest.
Копирование выполняется, даже если указатели src и dest перекрываются. Это связано с тем, что копирование происходит так, как будто создается промежуточный буфер, в который данные сначала копируются из src, а затем, наконец, копируются в dest.
Он определен в заголовочном файле "> заголовочный файл.
memmove () Параметры
dest
: Указатель на ячейку памяти, в которую копируется содержимое.src
: Указатель на ячейку памяти, из которой копируется содержимое.count
: Количество байтов для копирования из src в dest.
memmove () Возвращаемое значение
Функция memmove () возвращает dest, указатель на целевую ячейку памяти.
Пример: как работает функция memmove ()
#include #include using namespace std; int main() ( int arr(10) = (8,3,11,61,-22,7,-6,2,13,47); int *new_arr = &arr(5); memmove(new_arr,arr,sizeof(int)*5); cout << "After copying" << endl; for (int i=0; i<10; i++) cout << arr(i) << endl; return 0; )
Когда вы запустите программу, вывод будет:
После копирования 8 3 11 61-22 8 3 11 61-22