lstiter reparee fonction sapplique sur content

This commit is contained in:
Hugo LAMY
2019-11-29 16:27:48 +01:00
parent ced3108518
commit aa802f51c9
4 changed files with 24 additions and 17 deletions

View File

@@ -52,6 +52,16 @@ SRCS = ft_memset.c \
ft_putstr_fd.c \ ft_putstr_fd.c \
ft_putendl_fd.c \ ft_putendl_fd.c \
ft_putnbr_fd.c \ ft_putnbr_fd.c \
\
ft_lstnew.c \
ft_lstadd_front.c \
ft_lstsize.c \
ft_lstlast.c \
ft_lstadd_back.c \
ft_lstdelone.c \
ft_lstclear.c \
ft_lstiter.c \
ft_lstmap.c \
ODIR = ./builds ODIR = ./builds
OBJS = $(SRCS:%.c=$(ODIR)/%.o) OBJS = $(SRCS:%.c=$(ODIR)/%.o)

View File

@@ -6,7 +6,7 @@
/* By: hulamy <marvin@42.fr> +#+ +:+ +#+ */ /* By: hulamy <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2019/11/25 14:14:11 by hulamy #+# #+# */ /* Created: 2019/11/25 14:14:11 by hulamy #+# #+# */
/* Updated: 2019/11/28 17:20:38 by hulamy ### ########.fr */ /* Updated: 2019/11/29 16:27:05 by hulamy ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@@ -75,12 +75,11 @@
void ft_lstiter(t_list *lst, void (*f)(void *)) void ft_lstiter(t_list *lst, void (*f)(void *))
{ {
if (lst && f) if (!f)
{ return;
while (lst) while (lst)
{ {
f(lst); f(lst->content);
lst = lst->next; lst = lst->next;
} }
}
} }

View File

@@ -6,7 +6,7 @@
/* By: hulamy <marvin@42.fr> +#+ +:+ +#+ */ /* By: hulamy <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2019/11/25 14:14:11 by hulamy #+# #+# */ /* Created: 2019/11/25 14:14:11 by hulamy #+# #+# */
/* Updated: 2019/11/28 17:19:34 by hulamy ### ########.fr */ /* Updated: 2019/11/29 16:23:54 by hulamy ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@@ -75,13 +75,11 @@
void ft_lstiter(t_list *lst, void (*f)(void *)) void ft_lstiter(t_list *lst, void (*f)(void *))
{ {
if (!f)
if (lst && f) return;
{
while (lst) while (lst)
{ {
f(lst); f(lst->content);
lst = lst->next; lst = lst->next;
} }
{
} }

View File

@@ -6,7 +6,7 @@
/* By: hulamy <marvin@42.fr> +#+ +:+ +#+ */ /* By: hulamy <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2019/11/25 14:15:42 by hulamy #+# #+# */ /* Created: 2019/11/25 14:15:42 by hulamy #+# #+# */
/* Updated: 2019/11/25 14:34:19 by hulamy ### ########.fr */ /* Updated: 2019/11/29 16:21:26 by hulamy ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@@ -102,12 +102,12 @@ t_list *ft_lstmap(t_list *lst, void *(*f)(void *), void (*del)(void *))
if (!lst) if (!lst)
return (NULL); return (NULL);
tmp = (t_list*)f(lst); tmp = (t_list*)f(lst->content);
new = tmp; new = tmp;
while (lst->next) while (lst->next)
{ {
lst = lst->next; lst = lst->next;
if (!(tmp->next = (t_list*)f(lst))) if (!(tmp->next = (t_list*)f(lst->content)))
{ {
del(tmp->next->content); del(tmp->next->content);
free(tmp->next); free(tmp->next);