'main' : local function definitions are illegal 到底是什么错误啊,求大神指教!很急,在线等!

#include<stdio.h>#include<conio.h>#include<stdlib.h>#defineMAXSIZE1024typedefchardata... #include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#define MAXSIZE 1024
typedef char datatype;
typedef struct node{
datatype data;
struct node *Ichild,*rchild;
} bitree;
bitree *root;
bitree*CreatTree(){
char ch;
bitree *Q[MAXSIZE];
int front,rear;
bitree *root,*s;
root=NULL;
front=1,rear=0;
while((ch=getchar())!='#'){
s=NULL;
if(ch!='@')
{
s=(bitree*)malloc(sizeof(bitree));
s->data=ch;
s->Ichild=NULL;
s->rchild=NULL;
}
rear++;

Q[rear]=s;
if(rear==1)
root=s;
else{
if(s&&Q[front]){
if(rear%2==0)
Q[front]->Ichild=s;
else
Q[front]->rchild=s;
}
}
return root;
} //CreatTree

void main()
{
char a;
a=bitree*CreatTree();
printf("%d\n"a);
}
展开
 我来答
匿名用户
2013-05-30
展开全部
'main' : local function definitions are illegal 是因为函数嵌套了
CreatTree()少了一半的花括号,在主函数上面加个}

然后最后那句printf("%d\n"a);少了个逗号,改成printf("%d\n",a);
a=bitree*CreatTree();这种调用方式是不对的,调用直接写函数名就行了,改成a=CreatTree();
还有一个,a是字符型,但CreatTree()返回的是bitree类型的指针,改一下a的类型或者改一下CreatTree的返回值类型吧
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式