每次我从插入函数中退出时,根值都会返回 NULL 我无法真正理解为什么指针不保持它的值。
int main(int argc, char *argv[])
{
int input;
node* root = NULL;
while (input >0 ) {
cout<< "Enter a Number:";
cin>> input;
insert (root,input);
}
printall(root);
system("PAUSE");
return 0;
}
void insert(node* _node,int val)
{
//#if 0
cout << "In insert before" << _node;
if (_node == NULL) {
_node = new node;
_node->val = val;
_node->left = NULL;
_node->right = NULL;
return;
}
//#endif
if(_node->val > val) {
insert(_node->left,val);
} else if (_node->val < val) {
insert(_node->right,val);
}
return;
}