#include <stdio.h>
#include <stdlib.h>
#include <string.h>


typedef struct listnode
{
 char data[10];
 struct listnode* link;
}listnode;

typedef struct
{
 listnode* head;
} linkedList_h;


linkedList_h* createLinkList_h(void);

void freeLinkList_h(linkedList_h*);
void addLastnode(linkedList_h*, char*);
void reverse(linkedList_h*);
void deletelastnode(linkedList_h*);
void printlist(linkedList_h*);

 

linkedList_h* createLinkList_h(void)//헤더파일 생성...연백연결리스트.
{
 linkedList_h* L;
 L = (linkedList_h*)malloc(sizeof(linkedList_h));

 L->head=NULL;

 return L;

}


void addLastnode(linkedList_h* L, char* x)
{

 listnode* newnode;
 listnode* p;


 newnode=(listnode*)malloc(sizeof(listnode));

 strcpy(newnode->data,x);

 newnode->link=NULL;

 if(L->head == NULL)
 {
  L ->head=newnode;
  return;
 }


 p=L->head;

 while(p->link!=NULL)
  p=p->link;
 p->link=newnode;

}


void printlist(linkedList_h* L)
{
 listnode* p;
 printf(\" L = (\");


 while(p!=NULL)
 {
  printf(\"%s\",p->data);
  p = p->link;

  if(p!=NULL)
   printf(\",\");
 }

 printf(\" ) \\n\");
}

 

int main()
{

 linkedList_h* L;
 
 L=createLinkList_h();

 printf(\"공백리스트 생성하기\\n\");

 printlist(L);
 getchar();


 printf(\"추가생성하기 생성하기\\n\");
 addLastnode(L,\"월\" );
 addLastnode(L,\"화\" );
 addLastnode(L,\"수\" );
  
 printlist(L);
 getchar();

 


 return 0;

}


-----------------

linkedList_h* createLinkList_h(void);

void freeLinkList_h(linkedList_h*);
void addLastnode(linkedList_h*, char*);
void reverse(linkedList_h*);
void deletelastnode(linkedList_h*);
void printlist(linkedList_h*);

이런 기능들 있어야하는게 귀찮아서 노드 추가 + 프린트기능만 구현 할려고 하는데여.

ㅅㅂ 에러는 없는데 중간에 꺼지네요. 원래 연결리스트는 끝까지 다 해줘야 고자가 안되는거임?..

ㅅㅂ 저딴 기능들까진 필요없느데...