Alchemist
Data Structure - C로 linked list 구현해보기 본문
#include
#include
struct NODE {
struct NODE *next;
int score;
char *name;
};
int main()
{
struct NODE *head = malloc(sizeof(struct NODE));
head->score = 100;
head->name = "KIM";
struct NODE *node1 = malloc(sizeof(struct NODE));
head->next = node1;
node1->score = 90;
node1->name = "LEE";
struct NODE *node2 = malloc(sizeof(struct NODE));
node1->next = node2;
node2->score = 80;
node2->name = "PARK";
node2->next = NULL;
struct NODE *print = head;
while (print != NULL) // 포인터가 NULL이 아닐 때 계속 반복
{
printf("%s : %d\n", print->name, print->score); // 현재 노드의 데이터 출력
print = print->next; // 포인터에 다음 노드의 주소 저장
}
free(node2);
free(node1);
free(head);
return 0;
}
자료구조를 공부하며
동적 메모리 할당 - malloc 에 대한 내용이 어려워 성적표를 출력해보며 스스로 적립하는 시간을 가져보았다.
노드 구조에 대해 그림으로 나타내 보면 아래와 같다.
'STUDY' 카테고리의 다른 글
2022년 1학기 학습 계획(휴학) (0) | 2022.04.22 |
---|---|
[R] - Wordcloud2 (0) | 2019.06.02 |
리눅스 마스터 2급 (0) | 2019.06.01 |
파이썬으로 숫자 야구 게임 만들기 (0) | 2019.05.29 |