From c98de126d2252fe47dc2a9094a5f9a8fa6b4b60a Mon Sep 17 00:00:00 2001 From: Charles Cabergs Date: Sun, 11 Oct 2020 15:52:52 +0200 Subject: Removing libft/minishell_test submodules, Removing subject/README/etc --- libft/src/mem/ft_memmove.c | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 libft/src/mem/ft_memmove.c (limited to 'libft/src/mem/ft_memmove.c') diff --git a/libft/src/mem/ft_memmove.c b/libft/src/mem/ft_memmove.c new file mode 100644 index 0000000..2f794fd --- /dev/null +++ b/libft/src/mem/ft_memmove.c @@ -0,0 +1,35 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_memmove.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: cacharle +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2019/10/07 10:03:21 by cacharle #+# #+# */ +/* Updated: 2020/01/17 10:39:26 by cacharle ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void *ft_memmove(void *dst, const void *src, size_t len) +{ + long int *long_dst; + const long int *long_src; + void *dst_copy; + + if (dst >= src) + return (ft_memcpy(dst, src, len)); + dst_copy = dst; + while (len % 8 > 0) + { + len--; + *(t_ftbyte*)dst++ = *(t_ftbyte*)src++; + } + long_dst = dst; + long_src = src; + len /= 8; + while (len-- > 0) + *long_dst++ = *long_src++; + return (dst_copy); +} -- cgit