-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathft_memmove.c
26 lines (24 loc) · 1.3 KB
/
ft_memmove.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ft_memmove.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: gpiccion <[email protected]. +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2021/11/22 16:14:03 by gpiccion #+# #+# */
/* Updated: 2021/11/22 16:14:03 by gpiccion ### ########.fr */
/* */
/* ************************************************************************** */
#include "libft.h"
// Copies 'n' bytes from memory area 'src' to memory area 'dest'.
// The memory areas may overlap.
// First copies into a temporary array, then copies from that array to 'dest'.
// Returns a pointer to 'dest'.
void *ft_memmove(void *dest, const void *src, size_t n)
{
if (src > dest)
return (ft_memcpy(dest, src, n));
while (n-- > 0)
((char *)dest)[n] = ((char *)src)[n];
return (dest);
}