Libft
42 Libft library documentation
Loading...
Searching...
No Matches
ft_memmove.c
Go to the documentation of this file.
1/* ************************************************************************** */
2/* */
3/* ::: :::::::: */
4/* ft_memmove.c :+: :+: :+: */
5/* +:+ +:+ +:+ */
6/* By: raphalme <raphalme@student.42.fr> +#+ +:+ +#+ */
7/* +#+#+#+#+#+ +#+ */
8/* Created: 2025/12/29 18:43:00 by raphalme #+# #+# */
9/* Updated: 2026/04/14 10:45:22 by raphalme ### ########.fr */
10/* */
11/* ************************************************************************** */
12
13#include <stdlib.h>
14
23void *ft_memmove(void *dst, const void *src, size_t len)
24{
25 unsigned char *d;
26 const unsigned char *s;
27
28 if (!dst && !src)
29 return (NULL);
30 d = (unsigned char *)dst;
31 s = (const unsigned char *)src;
32 if (d > s)
33 {
34 while (len--)
35 d[len] = s[len];
36 }
37 else
38 {
39 while (len--)
40 *d++ = *s++;
41 }
42 return (dst);
43}
void * ft_memmove(void *dst, const void *src, size_t len)
Copies bytes between potentially overlapping memory areas.
Definition ft_memmove.c:23