From d699849b2360f90c61f645c5d4d4232cd3e1c962 Mon Sep 17 00:00:00 2001 From: Thomas Vanbesien Date: Sat, 21 Feb 2026 12:39:20 +0100 Subject: Initial commit: libft Part 1 with tests and documentation Reimplements 24 libc functions with Doxygen-documented header and test suite comparing against libc. --- ft_strlcat.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 ft_strlcat.c (limited to 'ft_strlcat.c') diff --git a/ft_strlcat.c b/ft_strlcat.c new file mode 100644 index 0000000..1274ba5 --- /dev/null +++ b/ft_strlcat.c @@ -0,0 +1,23 @@ +#include "libft.h" + +size_t +ft_strlcat (char *dst, const char *src, size_t size) +{ + size_t dst_len; + size_t src_len; + size_t avail; + + dst_len = ft_strlen (dst); + src_len = ft_strlen (src); + if (dst_len >= size) + return (size + src_len); + avail = size - dst_len - 1; + if (src_len < avail) + ft_memcpy (dst + dst_len, src, src_len + 1); + else + { + ft_memcpy (dst + dst_len, src, avail); + dst[size - 1] = '\0'; + } + return (dst_len + src_len); +} -- cgit v1.2.3