summaryrefslogtreecommitdiff
path: root/ft_memcpy.c
diff options
context:
space:
mode:
Diffstat (limited to 'ft_memcpy.c')
-rw-r--r--ft_memcpy.c27
1 files changed, 14 insertions, 13 deletions
diff --git a/ft_memcpy.c b/ft_memcpy.c
index 49c4575..0ca79fa 100644
--- a/ft_memcpy.c
+++ b/ft_memcpy.c
@@ -6,32 +6,33 @@
/* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/03/05 11:15:12 by dkaiser #+# #+# */
-/* Updated: 2024/03/05 11:39:34 by dkaiser ### ########.fr */
+/* Updated: 2024/03/07 13:48:53 by dkaiser ### ########.fr */
/* */
/* ************************************************************************** */
#include <string.h>
-void *ft_memcpy(void *restrict dst, const void *restrict src, size_t n)
+void *ft_memcpy(void *dst, const void *src, size_t n)
{
- size_t i;
+ char *dst_ptr;
+ char *src_ptr;
- i = 0;
- while (i < n)
- {
- *((char *)dst + i) = *((char *)src + i);
- i++;
- }
+ dst_ptr = (char *)dst;
+ src_ptr = (char *)src;
+ if (!dst && !src)
+ return (dst);
+ while (n--)
+ *dst_ptr++ = *src_ptr++;
return (dst);
}
/* #include <stdio.h> */
/* int main(void) */
/* { */
-/* char src[] = "Test Hurra"; */
-/* char src2[] = "Test Hurra"; */
-/* char dst[] = "AAAAAAIIIIIEEEEE"; */
-/* char dst2[] = "AAAAAAIIIIIEEEEE"; */
+/* char src[] = "a"; */
+/* char src2[] = "a"; */
+/* char dst[] = ""; */
+/* char dst2[] = ""; */
/* printf("ft_memcpy: %s\n", (char *) ft_memcpy(dst, src, 20)); */
/* printf("memcpy: %s\n", (char *) memcpy(dst2, src2, 20)); */
/* } */