这个错误怎么改正?
程序代码:char** coding(H_tree *t,int n,int i,stack *s)//t为霍夫曼树,n为符号,i为当前节点,s为存放编码的栈
{
int j; char **HC;//hc存放编码
init_stack(s);//初始化栈
HC=new (char *)[n];error C2143: syntax error : missing ';' before '['
if(t->node[i].lchild==-1&&t->node[i].rchild==-1)
{
HC[i]=new char[s->top];
for(j=0;j<s->top;j++)
HC[i][s->top-j-1]=pop(s);
}//如果为叶子节点,这输出此符号说在叶子节点的编码;
else
push(s,'0');
coding(t,n,t->node[i].lchild,s);//采用递归的方式对叶子节点的符号进行编码叶子节点为1,其他节点为零
pop(s);//由于根节点是进栈一个字符所以要弹出一个字符
push(s,'1');//右子树的叶子节点字符为1;
coding(t,n,t->node[i].rchild,s);
pop(s);
}
return HC;
}








