memmove.c 261 B

1234567891011121314151617
  1. #include <string.h>
  2. __attribute__((used))
  3. void *memmove(void *dest, const void *src, size_t n)
  4. {
  5. char *destp = dest;
  6. const char *srcp = src;
  7. if (srcp < destp)
  8. while (n--)
  9. destp[n] = srcp[n];
  10. else
  11. while (n--)
  12. *destp++ = *srcp++;
  13. return dest;
  14. }