t_list *ft_lstnew(void *content)
새로운 요소를 만들어 리턴한다.(malloc이용)
새 요소의 content에는 인자로 받은 content가 들어간다.
새 요소의 next는 NULL을 가리킨다.
-----------------------------------------------------------
void ft_lstadd_front(t_list **lst, t_list *new)
인자로 받은 new를 lst의 맨 처음에 넣는다.
-----------------------------------------------------------
int ft_lstsize(t_list *lst)
리스트의 요소 개수를 리턴한다.
lst는 리스트의 시작이다.
-----------------------------------------------------------
t_list *ft_lstlast(t_list *lst)
리스트의 마지막 요소를 리턴한다.
lst는 리스트의 시작이다.
-----------------------------------------------------------
void ft_lstadd_back(t_list **lst, t_list *new)
인자로 들어온 new를 lst리스트의 마지막에 넣는다.
lst는 list의 첫 번째를 가리키는 포인터다.
-----------------------------------------------------------
void ft_lstdelone(t_list *lst, void (*del)(void *))
첫 번째 인자는 우리가 free시킬 요소다.
두 번째 인자로 첫 번째 인자의 content를 del시킨다.
요소의 next는 free시키면 안 된다.
마지막으로 첫 번째 인자를 free시킨다.
-----------------------------------------------------------
void ft_lstclear(t_list **lst, void (*del)(void *))
첫 번째 인자는 어떤 요소를 가리키고 있는 t_list형 포인터의 주소다.
두 번째 인자는 삭제하는 함수.
lst가 가리키는 곳부터 시작해 연결된 모든 요소 안의 content를 del시키고 free한다.
최종적으로 *lst는 NULL을 가리키고 있어야 한다.
-----------------------------------------------------------
void ft_lstiter(t_list *lst, void (*f)(void *))
첫 번째 인자는 어떤 요소를 가리키는 포인터다.
두 번째 인자는 리스트를 돌면서 적용할 함수다.
lst리스트를 돌면서 f함수를 각각의 요소의 content에 적용시킨다.
-----------------------------------------------------------
t_list *ft_lstmap(t_list *lst, void *(*f)(void *), void (*del)(void *))
첫 번째 인자는 어떤 요소를 가리키는 포인터다.
두 번째 인자는 리스트를 iterate할 함수다.
세 번째 인자는 필요할 때 요소의 content를 delete할 함수다.
리턴 값은 새로운 리스트이다.
lst를 돌면서 각각의 요소 내 content에 f라는 함수를 적용한다.
f라는 함수 적용에 성공한 리스트를 만들어 반환한다.
'Code 42 > libft' 카테고리의 다른 글
isalpha, islower, isupper, isdigit, isascii, isalnum, isprint, toupper, tolower (0) | 2020.03.11 |
---|---|
ft_substr // ft_strjoin // ft_strmpai (0) | 2020.02.27 |
Mac calloc, strdup (0) | 2020.02.27 |
(Mac) memmove, memchr, memcmp, strchr, strrchr, strnstr (0) | 2020.02.26 |
(MAC) bzero, memcpy, memccpy (0) | 2020.02.24 |
최근댓글