➰ 코딩 부트캠프/42 seoul

[0 Circle] Libft - ft_lstdelone, ft_strclear

 사과개발자 2021. 1. 4. 22:52

📌ft_lstdelone

리스트의 content 를 del함수를 통해 삭제하고 그 리스트를 free시켜준다

void    ft_lstdelone(t_list *list, void (*del)(void *));

➕ 매개변수 (Parameters)

  • list : 삭제할 리스트의 포인터 주소
  • del : content 를 삭제하는데 사용되는 함수

➕ 반환값 (Return)

  • void : 없음

➕ 설명 (Description)

➕ 코드 (Code)

#include "libft.h"

void    ft_lstdelone(t_list *list, void (*del)(void *))
{
    del(list->content);
    free(list);
}

📌ft_lstclear

리스트의 content 를 del함수를 통해 삭제하고 그 리스트 이후의리스트를 전부 free시켜준다

void    ft_lstclear(t_list **list, void (*del)(void *));

➕ 매개변수 (Parameters)

  • list : 삭제할 리스트의 포인터 주소
  • del : content 를 삭제하는데 사용되는 함수

➕ 반환값 (Return)

  • void : 없음

➕ 설명 (Description)

➕ 코드 (Code)

#include "libft.h"

void    ft_lstclear(t_list **list, void (*del)(void *))
{
    t_list    *next;

    if (list)
    {
        while (*list)
        {
            next = (*list)->next;
            ft_lstdelone(*list, del);
            (*list) = next;
        }
    }
}
반응형