diff options
Diffstat (limited to 'libft/ft_substr.c')
-rw-r--r-- | libft/ft_substr.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/libft/ft_substr.c b/libft/ft_substr.c new file mode 100644 index 0000000..87c2568 --- /dev/null +++ b/libft/ft_substr.c @@ -0,0 +1,33 @@ +/* ************************************************************************** */ +/* LE - / */ +/* / */ +/* ft_substr.c .:: .:/ . .:: */ +/* +:+:+ +: +: +:+:+ */ +/* By: rbousset <marvin@le-101.fr> +:+ +: +: +:+ */ +/* #+# #+ #+ #+# */ +/* Created: 2019/10/12 15:37:02 by rbousset #+# ## ## #+# */ +/* Updated: 2019/10/13 08:33:09 by rbousset ### #+. /#+ ###.fr */ +/* / */ +/* / */ +/* ************************************************************************** */ + +#include "libft.h" +#include <stddef.h> + +char + *ft_substr(const char *s, unsigned int start, size_t len) +{ + char *nstr; + + if (start > ft_strlen(s) - 1) + { + nstr = (char*)ft_calloc(1, sizeof(char)); + if (!nstr) + return (NULL); + return (nstr); + } + nstr = (char*)ft_calloc(len + 1, sizeof(char)); + if (!nstr) + return (NULL); + return ((char*)ft_memcpy(nstr, s + start, len)); +} |