请问下面的二叉树当输出结果后如何将内存释放掉:(程序是正确的,我只想在inorderTraverse()函数后面加一个释放内存的函数,如何操作,请指教),谢谢
#include<stdio.h>
#include<stdlib.h>
typedef struct BiTNOde{
 int data;
 struct BiTNOde *lchild,*rchild;
}BiTNode,*BiTree;
BiTree CreateTree(BiTree T,int value);
void InorderTraverse(BiTree T);
int main()
{
 BiTree T=NULL;
 int i,n,value;
 printf("Please input create node number:\n");
 scanf("%d",&n);
 for(i=1;i<=n;i++)  //创建二叉树
 {
  scanf("%d",&value);
  T=CreateTree(T,value);
 }
 InorderTraverse(T); //中序遍历二叉树
 printf("null\n");
 return 0;
}
BiTree CreateTree(BiTree T,int value)
{
 if(T==NULL)
 {
  T=(BiTree)malloc(sizeof(BiTNode));
  if(T)
  {
   T->data=value;
   T->lchild=NULL;
   T->rchild=NULL;
  }
  else
   printf("malloc failure.\n");
 }
 else
 {
  if(value < T->data)
   T->lchild=CreateTree(T->lchild,value);
  if(value > T->data)
   T->rchild=CreateTree(T->rchild,value);
 }
 return T;
}
void InorderTraverse(BiTree T)
{
 if(T)
 {
  InorderTraverse(T->lchild);
  printf("%d->",T->data);
  InorderTraverse(T->rchild);
 }
}


 
											





 
	    