23 lines
323 B
C
23 lines
323 B
C
|
#include <string.h>
|
||
|
|
||
|
#ifndef __SUPPORT_ARCH_SH
|
||
|
|
||
|
void *memmove(void *_dest, void const *_src, size_t n)
|
||
|
{
|
||
|
char *dest = _dest;
|
||
|
char const *src = _src;
|
||
|
|
||
|
if(dest <= src) {
|
||
|
for(size_t i = 0; i < n; i++)
|
||
|
dest[i] = src[i];
|
||
|
}
|
||
|
else {
|
||
|
while(n-- > 0)
|
||
|
dest[n] = src[n];
|
||
|
}
|
||
|
|
||
|
return dest;
|
||
|
}
|
||
|
|
||
|
#endif /*__SUPPORT_ARCH_SH*/
|