이진탐색트리 코딩질문

qw3709의 이미지

// 포인터 p가 가리키는 노드와 비교하여 노드 x를 삽입하는 연산
void insertNode( char x ) {
treeNode* p=root;
treeNode* newNode;
treeNode* parent=NULL;
parent=p;

while(p != NULL)
{


if(xkey)
p=p->left;
else if(x==p->key)
{
printf("\n 이미 같은 키가 있습니다 \n");
return;
}
else
p=p->right;

}

/*if(parent==NULL)
p->key=x;
p->left=NULL;
p->right=NULL;
}
else if(parent!=NULL)
{
if(parent->key > x)
{
parent->left=p;
p->key=x;
p->left=NULL;
p->right=NULL;
}
else
{
parent->right=p;
p->key=x;
p->left=NULL;
p->right=NULL;
}
}*/
}

주석넣은부분에서 오류가나는거같아요..

주석을걸면 안팅기고 주석을 안걸면 팅겨요

jangcy999의 이미지

root가 시작으로 보이는데 root를 대입하는 부분이 안보이네요
p값은 없는 경우 null값일텐데요

메모리를 생성하는 부분도 안보이네요

총체적인 부실로 보입니다.