#include <stdio.h>

#include <malloc.h>


typedef int element;

typedef struct DListNode {

element data;

struct DListNode *llink;

struct DListNode *rlink;

} DListNode;


int get_length(DListNode *listtype) {

int i = 0;

while (listtype->rlink != NULL) {

i++;

listtype = listtype->rlink;

}

return i;

}


void add(DListNode *new_node, element item) {

if (get_length(new_node) == 0){

new_node = (DListNode*)malloc(sizeof(DListNode));

new_node->>

new_node->llink = NULL;

new_node = new_node->rlink;

}

else {

new_node = (DListNode*)malloc(sizeof(DListNode));

new_node->>

new_node = new_node->rlink;

}

}


void display(DListNode *listtype) {

while (listtype->rlink != NULL) {

printf("%d ", listtype->data);

listtype = listtype->rlink;

}

}


int main() {

DListNode *listtype1 = NULL;

add(listtype1, 3);

add(listtype1, 5);

get_length(listtype1);

display(listtype1);

}


이거 안 돌아가던데 add()에 노드가 NULL값이 될 때까지 이동해서 그런 거죠?