From 262134f2899eed2b22252b0d534d1dd1006d2ee8 Mon Sep 17 00:00:00 2001 From: lfirmin Date: Sun, 16 Nov 2025 10:09:48 +0100 Subject: [PATCH] github to gitea --- ex00/ft_strcmp.c | 44 +++++++++++++++++++++++++++++++++++++++ ex01/ft_strncmp.c | 44 +++++++++++++++++++++++++++++++++++++++ ex02/ft_strcat.c | 40 ++++++++++++++++++++++++++++++++++++ ex03/ft_strncat.c | 42 ++++++++++++++++++++++++++++++++++++++ ex04/ft_strstr.c | 48 +++++++++++++++++++++++++++++++++++++++++++ ex05/ft_strlcat.c | 52 +++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 270 insertions(+) create mode 100644 ex00/ft_strcmp.c create mode 100644 ex01/ft_strncmp.c create mode 100644 ex02/ft_strcat.c create mode 100644 ex03/ft_strncat.c create mode 100644 ex04/ft_strstr.c create mode 100644 ex05/ft_strlcat.c diff --git a/ex00/ft_strcmp.c b/ex00/ft_strcmp.c new file mode 100644 index 0000000..f9af0ae --- /dev/null +++ b/ex00/ft_strcmp.c @@ -0,0 +1,44 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_strcmp.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: lfirmin +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/14 01:04:30 by lfirmin #+# #+# */ +/* Updated: 2024/02/18 05:53:51 by lfirmin ### ########.fr */ +/* */ +/* ************************************************************************** */ + +int ft_strcmp(char *s1, char *s2) +{ + int c; + int n; + + c = 0; + n = 0; + while (s1[c] != '\0' && s2[c] != '\0' && n == 0) + { + if (s1[c] != s2[c]) + { + break ; + } + c++; + } + n = s1[c] - s2[c]; + return (n); +} + +/*#include +int main() +{ + char *s1; + char *s2; + int n; + + s1 = "Salut"; + s2 = "Salut !"; + n = ft_strcmp(s1, s2); + printf("%d\n", n); + return (0); +}*/ diff --git a/ex01/ft_strncmp.c b/ex01/ft_strncmp.c new file mode 100644 index 0000000..1574806 --- /dev/null +++ b/ex01/ft_strncmp.c @@ -0,0 +1,44 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_strncmp.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: lfirmin +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/14 02:38:17 by lfirmin #+# #+# */ +/* Updated: 2024/02/14 03:58:48 by lfirmin ### ########.fr */ +/* */ +/* ************************************************************************** */ + +int ft_strncmp(char *s1, char *s2, unsigned int n) +{ + unsigned int r; + unsigned int c; + + c = 0; + r = 0; + while ((s1[c] != '\0' || s2[c] != '\0') && c < n) + { + if (s1[c] != s2[c]) + { + r = s1[c] - s2[c]; + break ; + } + c++; + } + return (r); +} + +/*#include + +int main() +{ + char *s1 = "hellohelf"; + char *s2 = "hellohel"; + unsigned int n = 9; + int result = ft_strncmp(s1, s2, n); + + printf("%d\n", result); + + return 0; +}*/ diff --git a/ex02/ft_strcat.c b/ex02/ft_strcat.c new file mode 100644 index 0000000..4de0d59 --- /dev/null +++ b/ex02/ft_strcat.c @@ -0,0 +1,40 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_strcat.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: lfirmin +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/14 04:26:07 by lfirmin #+# #+# */ +/* Updated: 2024/02/20 03:02:52 by lfirmin ### ########.fr */ +/* */ +/* ************************************************************************** */ + +char *ft_strcat(char *dest, char *src) +{ + unsigned int c1; + unsigned int c2; + + c1 = 0; + c2 = 0; + while (dest[c1] != '\0') + { + c1 ++; + } + while (src[c2] != '\0') + { + dest[c1] = src[c2]; + c1++; + c2++; + } + dest[c1] = '\0'; + return (dest); +} +/*#include +int main(void) +{ + char dest[50] = "bonjour"; + char *src; + src = " les amis"; + printf("%s\n", ft_strcat(dest, src)); +}*/ diff --git a/ex03/ft_strncat.c b/ex03/ft_strncat.c new file mode 100644 index 0000000..f0c0ba7 --- /dev/null +++ b/ex03/ft_strncat.c @@ -0,0 +1,42 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_strncat.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: lfirmin +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/14 05:18:37 by lfirmin #+# #+# */ +/* Updated: 2024/02/20 03:07:06 by lfirmin ### ########.fr */ +/* */ +/* ************************************************************************** */ + +char *ft_strncat(char *dest, char *src, unsigned int nb) +{ + unsigned int c1; + unsigned int c2; + + c1 = 0; + c2 = 0; + while (dest[c1] != '\0') + { + c1 ++; + } + while (src[c2] != '\0' && c2 < nb) + { + dest[c1 + c2] = src[c2]; + c2++; + } + dest[c1 + c2] = '\0'; + return (dest); +} +/* +#include +int main(void) +{ + char dest[50] = "bonjour"; + char *src; + int nb; + nb = 6; + src = " les amis"; + printf("%s\n", ft_strncat(dest, src, nb)); +}*/ diff --git a/ex04/ft_strstr.c b/ex04/ft_strstr.c new file mode 100644 index 0000000..3b98211 --- /dev/null +++ b/ex04/ft_strstr.c @@ -0,0 +1,48 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_strstr.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: lfirmin +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/16 23:08:54 by lfirmin #+# #+# */ +/* Updated: 2024/02/20 03:16:39 by lfirmin ### ########.fr */ +/* */ +/* ************************************************************************** */ + +char *ft_strstr(char *str, char *to_find) +{ + int h; + int i; + + i = 0; + h = 0; + if (to_find[h] == '\0') + { + return (str); + } + while (str[i] != '\0') + { + while (str[i + h] == to_find[h] && str[i + h] != '\0') + { + h++; + } + if (to_find[h] == '\0') + { + return (str + i); + } + i++; + h = 0; + } + return (0); +} +/* +#include + +int main(void) +{ + char s1[] = "su Helloun swsurld ! sun fsdgs sfsdfgsgf "; + char s2[] = "sun"; + + printf("%s\n", ft_strstr(s1, s2)); +}*/ diff --git a/ex05/ft_strlcat.c b/ex05/ft_strlcat.c new file mode 100644 index 0000000..760338d --- /dev/null +++ b/ex05/ft_strlcat.c @@ -0,0 +1,52 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_strlcat.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: lfirmin +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/02/14 04:26:07 by lfirmin #+# #+# */ +/* Updated: 2024/02/20 03:31:48 by lfirmin ### ########.fr */ +/* */ +/* ************************************************************************** */ + +int ft_strlen(char *str) +{ + int i; + + i = 0; + while (str[i] != '\0') + { + i++; + } + return (i); +} + +unsigned int ft_strlcat(char *dest, char *src, unsigned int size) +{ + unsigned int c1; + unsigned int c2; + unsigned int c3; + unsigned int c4; + + c1 = 0; + c2 = 0; + while (dest[c2] != '\0') + { + c2 ++; + } + c3 = c2; + c4 = ft_strlen(src); + if (size == 0 || size <= c3) + { + return (c4 + size); + } + while (src[c1] != '\0' && c1 < size - c3 - 1) + { + dest[c2] = src[c1]; + c1++; + c2++; + } + dest[c2] = '\0'; + return (c1); +}