关于指针的用法:讲解实例三种方法先序创建二叉树
关于为何void CreateBiTree(BiTree T)创建不了二叉树而必须CreateBiTree(BiTree &T)
首先看我们的定义
typedef struct BiTNode{
char data;
struct BiTNode *lchild;
struct BiTNode *rchild;
}BiTNode,*BiTree;//BiTree为指向此结构的指针类型
而后看创建二叉树代码
void CreateBiTree(BiTree &T){
//引用,若去掉引用则无法创建二叉树
char ch;
cin>>ch;
if(ch=='*') T=NULL; //先序输入二叉树结点的值,*表示空,
else
{
T=new BiTNode;
T->data