예제 - 10_4.c
#include < stdio.h > #include < stdlib.h > // malloc() 함수
typedef struct node { char data; struct node *next; }NODE;
int main() { NODE *list; NODE *temp;
list = (NODE *)malloc(sizeof(NODE)); // list 에 주소값을 넣고 동적메모리할당 list->data='a'; // 동적할당한곳의 data에 'a' 값을 넣음. temp = list; // temp 에 동적할당받은 list 주소값을 넣음. temp->next = (NODE *)malloc(sizeof(NODE)); // temp->next에 동적할당을 받는다. temp = temp->next; // temp 에다가 동적할당받은 주소를 넣어준다. temp->data='b'; // 동적할당받은주소에 'b' 값을 넣음. temp->next = (NODE *)malloc(sizeof(NODE)); // temp->next에 동적할당을 받는다. temp = temp->next; // temp 에다가 동적할당받은 주소를 넣어준다. temp->data='c'; // 동적할당받은주소에 'c' 값을 넣음. temp->next=NULL; // temp->next에 NULL 을 넣는다.
// 연결리스트의 출력 temp = list; while( temp != NULL ) { printf("%5c\n", temp->data); temp = temp->next; }
temp = list; while( temp != NULL ) { list = list->next; free(temp); temp = list; }
return 0; }
| |