大家帮个忙 有个地方看不懂 详细解答下
void decode(){
cout<<"下面对根目录下文件codefile.txt中的字符进行译码"<<endl;
FILE *codef,*txtfile;
if((txtfile=fopen("Textfile.txt","w"))==NULL)
{
cout<<"不能打开文件"<<endl;
}
if ((codef=fopen("codefile.txt","r"))==NULL)
{
cout<<"不能打开文件"<<endl;
}
char *tbdc,*outext,i2;
int io=0,i,m;
unsigned long length=10000;
tbdc=(char*)malloc(length*sizeof(char));
fgets(tbdc,length,codef);
outext=(char*)malloc(length*sizeof(char));
m=2*n-1;
for(i=0;*(tbdc+i)!='\0';i++)
{
i2=*(tbdc+i);
if(HT[m].lchild==0)
{
*(outext+io)=*(z+m-1);
io++;
m=2*n-1;
i--;
}
else if(i2=='0') m=HT[m].lchild;
else if(i2=='1') m=HT[m].rchild;
}
*(outext+io)='\0'; //就是这个加号 是干什么用的
fputs(outext,txtfile);
cout<<"译码完成"<<endl<<"内容写入根目录下的文件txtfile.txt中"<<endl<<endl;
free(tbdc);
free(outext);
fclose(txtfile);
fclose(codef);
}