说明语法错误
这是创建二叉树的实现函数void BuildBiTree(BSTree &T, char *s, int i)
{
char stack[20],base,top;
int left,middle,right;
base=top=0;
if(*s)
{
T=(BSTree)malloc(sizeof(BSTNode));
T->data=s[i];
T->lchild=NULL;
T->rchild=NULL;
if(s[i+1]!='\0' && s[i+1]!=',' && s[i+1]!=')')
{
left=i+2;
if(s[left]!='#')
BuildBiTree(T->lchild,s,left);
middle=i+3;
if(s[middle]=='(')
stack[top++]=s[middle++];
for(;top!=base && s[middle]!='\0';middle++)
{
if(s[middle]=='(')
stack[top++]=s[middle];
if(s[middle]==')')
top--;
}
right=++middle;
if(s[right]!='#')
BuildBiTree(T->rchild,s,right);
}
}
}
这里是void BuildBiTree(BSTree &T, char *s, int i)有问题
我用的是win tc ,是不是win tc不支持void BuildBiTree(BSTree &T, char *s, int i)啊
只要把变量的“&”去掉就没问题,但去掉了就结果错误啊
ps:这不是主函数