➰ 코딩 부트캠프/42 seoul

[0 Circle] Libft - ft_lstsize, ft_lstadd_back

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

📌ft_lstsize

링크드리스트의 총 리스트의 개수 반환

int        ft_lstsize(t_list *list);

➕ 매개변수 (Parameters)

  • list : 링트드리스트의 시작주소

➕ 반환값 (Return)

  • int : 리스트의 총 개수

➕ 설명 (Description)

➕ 코드 (Code)

#include "libft.h"

int        ft_lstsize(t_list *list)
{
    int    num;

    num = 0;
    while (list)
    {
        num++;
        list = list->next;
    }
    return (num);
}

📌ft_lstadd_back

리스트의 맨 뒷부분에 new라는 이름의 리스트를 넣는다

void    ft_lstadd_back(t_list **list, t_list *new);

➕ 매개변수 (Parameters)

  • list : 첫번째 링크드리스트의 포인터 주소
  • new : 리스트의 맨 뒤에 추가할 리스트의 포인터 주소

➕ 반환값 (Return)

  • void : 없음

➕ 설명 (Description)

  • list 가 비어있을 경우도 고려를 해주어야 한다

➕ 코드 (Code)

#include "libft.h"

void    ft_lstadd_back(t_list **list, t_list *new)
{
    t_list *tmp;

    if (!*list)
        *list = new;
    else
    {
        tmp = *list;
        while (tmp->next)
            tmp = tmp->next;
        tmp->next = new;
    }
}
반응형