/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* ft_memmove.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: whaffman +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2024/07/05 18:42:07 by whaffman #+# #+# */ /* Updated: 2024/07/08 23:02:34 by whaffman ### ########.fr */ /* */ /* ************************************************************************** */ #include "libft.h" void *ft_memmove(void *dest, const void *src, size_t n) { unsigned char *dest_ptr; unsigned char *src_ptr; dest_ptr = (unsigned char *)dest; src_ptr = (unsigned char *)src; if (dest_ptr == src_ptr) return (dest); else if (dest_ptr < src_ptr) { while (n-- > 0) *dest_ptr++ = *src_ptr++; } else { while (n-- > 0) dest_ptr[n] = src_ptr[n]; } return (dest); }