단일연결리스트 마지막에노드추가 질문
촉촉한 초코칩
질문 제목 : 단일연결리스트 마지막에노드추가 질문학교에서 배운 연결리스트 공부중인데 제맘대로 안풀리네요..질문 내용 :
현재 list *plist로 받은게 l이라는 리스트입니다.
l리스트에는 2 와 1이 들어있습니다.
출력을하게되면
[2]-[1]이렇게되는상태이구요
제가할려는건
[2]-[1]-[3]-[4]
이렇게 하려고합니다.
현재실행하게되면 while문에서진행이안되는거같습니다..
제가 소스를 잘못짠건지..
도움좀부탁드릴게요 ㅎㅎ
(list_add_last) 함수부분봐주세요!
typedef int element;
// listnode 타입의 정의
typedef struct _listnode {
element data;// 데이터 필드
struct _listnode *link;// 링크 필드
} listnode;
typedef struct _list {
listnode *head;
} list;
void list_add_last(list *plist, element item)
{
listnode *p1;
p1 = (listnode *)malloc(sizeof(listnode));
p1 = plist-head;
while(p1 !=null)
{
p1 = p1-link;
}
p1-data = item;
p1-link = null;
}
list_add_last(&l,3);
list_add_last(&l,4);
-
염소자리 2023-11-09
그럼p1말고다른노드를하나더선언해야하나요?
새로선언한노드를와일문안에넣구요?ㅎㅎ