diff --git a/Makefile b/Makefile index 2a395e6..3184a37 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,7 @@ # By: tmaze +#+ +:+ +#+ # # +#+#+#+#+#+ +#+ # # Created: 2018/04/07 12:47:06 by tmaze #+# #+# # -# Updated: 2018/04/07 12:47:09 by tmaze ### ########.fr # +# Updated: 2018/04/07 15:01:14 by tmaze ### ########.fr # # # #******************************************************************************# @@ -52,7 +52,8 @@ SRCS = \ ft_strclr.c \ ft_striter.c \ ft_striteri.c \ - ft_strmap.c + ft_strmap.c \ + ft_strmapi.c OBJS = $(SRCS:.c=.o) INCLS = -I. diff --git a/ft_strmap.c b/ft_strmap.c index 3dfda7a..58da08a 100644 --- a/ft_strmap.c +++ b/ft_strmap.c @@ -5,8 +5,8 @@ /* +:+ +:+ +:+ */ /* By: tmaze +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ -/* Created: 2018/04/07 12:35:16 by tmaze #+# #+# */ -/* Updated: 2018/04/07 13:04:23 by tmaze ### ########.fr */ +/* Created: 2018/04/07 14:57:22 by tmaze #+# #+# */ +/* Updated: 2018/04/07 15:00:12 by tmaze ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/ft_strmapi.c b/ft_strmapi.c new file mode 100644 index 0000000..db43e65 --- /dev/null +++ b/ft_strmapi.c @@ -0,0 +1,27 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_strmapi.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: tmaze +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2018/04/07 15:00:23 by tmaze #+# #+# */ +/* Updated: 2018/04/07 15:00:24 by tmaze ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +char *ft_strmapi(char const *s, char (*f)(unsigned int, char)) +{ + char *ret; + size_t i; + size_t s_len; + + i = -1; + s_len = ft_strlen(s); + ret = ft_strnew(s_len); + while (++i < s_len) + ret[i] = (*f)(i, s[i]); + return (ret); +}