Содержание | Глава 14

Функция memmove

#include <string.h>
void *memmove(void *to, const void *from, size_t count);

Функция memmove() копирует count символов из массива, адресуемого параметром from, в массив, адресуемый параметром to. Если заданные массивы перекрываются, процесс копирования проходит корректно, т.е. соответствующее содержимое будет помещено в массив to, но содержимое массива from при этом изменится.

Функция memmove() возвращает значение указателя to.

Пример

Данная программа сдвигает содержимое массива str на 10 позиций в сторону младших адресов и выводит результат на дисплей.

#include <stdio.h>
#include <string.h>

#define SIZE 80

int main(void)
{
  char str[SIZE], *p;

  strcpy(str, "Когда, в случае если...");
  p = str + 10;

  memmove(str, p, SIZE);
  printf("результат сдвига: %s", str);

  return 0;
}

Зависимые функции

memcpy()
Содержание | Глава 14