링크드리스트와 구조체 선언 질문입니다
초록이
2023.04.01
쌍방향 링크드 리스트를 이용하려고 구조체를 선언하는데
계속 헷갈리고 이해가 안되는 구조체 선언에 대해 질문입니다.
1. 구조체 포인터를 typedef로 다음에 선언
typedef struct
{
int value;
PTR next;
PTR prev;
}KEY;
typedef struct KEY* PTR;
2.구조체 포인터를 typedef로 이전에 선언
typedef struct KEY* PTR;
typedef struct
{
int value;
PTR next;
PTR prev;
}KEY;
3. 구조체 포인터를 따로 정의지 않는 방법
typedef struct
{
int value;
KEY* next;
KEY* prev;
}KEY;
제가 하려는 코드는 이 구조체를 동적할당 일단 받고
각 node를 한개씩 생성해서
동적 할당 받은 key[0]~key[N]의 각각에 리스트를 연결하려고합니다.
이렇게 3종류가 헷갈리는데 어떤 방법으로 해야되나요 ㅠㅠ