static struct node{
char data;
node *lchind, *rchild;
};
static node *createatree(node *tree)
{
char item;
tree = (node*)malloc(sizeof(node*));
cout<< "請輸入字元" <<endl;
cin >> item;
if(item =='t')
tree = NULL;
else
{
tree->data = item;
tree->lchind = createatree(tree->lchind);
tree->rchild = createatree(tree->rchild);
}
return tree;
}
static void destroy(node *tree)
{
if(tree)
{
destroy(tree->lchind);
destroy(tree->rchild);
free(tree);
}
}
int main()
{
struct node *tree = NULL;
tree = createatree(tree);
destroy(tree);
return 0;
}
////////////程式分隔線//////////////////
我寫了一個可以讓使用者輸入的tree,輸入t時為null,並用前序排列
但是在free的函數上出了問題(爆掉跳出來了)
我逐行的跑進去,確定它是指到葉子的時候才free的(tree左右都是null)
想請問code的問題在哪裡??
謝謝~