#include <stdio.h>



typedef int element;


typedef struct tagNode {


element Data;

struct tagNode* NextNode;


}Node;


Node* SLL_CreateNode(element NewData)

{

Node* NewNode = (Node*)malloc(sizeof(Node));

NewNode->Data = NewData;

NewNode->NextNode = NULL;


return NewNode;

}


void SLL_DestoryNode(Node* Node)

{

free(Node);

}


void SLL_AppendNode(Node** Head, Node* NewNode)

{

if ((*Head) == NULL)

{

*Head = NewNode;

}

else

{

Node* Tail = (*Head);

while (Tail->NextNode != NULL)

{

Tail = Tail->NextNode;

}

Tail->NextNode = NewNode;

}

}


int main()

{

Node* List = NULL;

Node* NewNode = NULL;

NewNode = SLL_CreateNode(117);

SLL_AppendNode(&List, NewNode);

NewNode = SLL_CreateNode(119);

SLL_AppendNode(&List, NewNode);



return 0;

}



도저히 뭐가 잘못된건지 모르겠습니다


그리고 Append함수 이해가 안가네요 while()구문이..