From 9a2b208985ac7d4644c718ada74770b98eeb4598 Mon Sep 17 00:00:00 2001 From: Charles Date: Mon, 29 Jul 2019 16:56:27 +0200 Subject: part 2 done (except putchar and putstr unicode) --- ft_strtrim.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 ft_strtrim.c (limited to 'ft_strtrim.c') diff --git a/ft_strtrim.c b/ft_strtrim.c new file mode 100644 index 0000000..7b93eae --- /dev/null +++ b/ft_strtrim.c @@ -0,0 +1,27 @@ +#include +#include "libft.h" + +static int is_space(char c) +{ + return (c == ' ' || c == '\n' || c == '\t'); +} + +char *ft_strtrim(char const *s) +{ + size_t start; + size_t len; + char *trimed; + + start = 0; + while (s[start] && is_space(s[start])) + start++; + len = ft_strlen(&s[start]); + if (len != 0) + while (s[start + len - 1] && is_space(s[start + len - 1])) + len--; + if ((trimed = (char*)malloc(sizeof(char) * (len + 1))) == NULL) + return (NULL); + trimed = ft_strncpy(trimed, &s[start], len); + trimed[len] = '\0'; + return (trimed); +} -- cgit