c语言中Declaration syntax error问题,紧急!

[复制链接]
查看11 | 回复3 | 2009-3-17 19:21:34 | 显示全部楼层 |阅读模式
#include
#include
#define NULL 0
typedef struct stackNode
{
char data;
struct stackNode *next;
}StackNode;
typedef struct
{
StackNode *top;
}LinkStack;
void main()
{
LinkStack *S;
StackNode *L,*p,*t;
char x,y,*a;
S=(LinkStack *)malloc(sizeof(LinkStack));
a=(char *)malloc(sizeof(char));
S->top=NULL;
p=(StackNode *)malloc(sizeof(StackNode));
L=p;
scanf("%c",&x);
while(x!='\n')
{
p->data=x;
p->next=S->top;
S->top=p;
p=(StackNode *)malloc(sizeof(StackNode));
scanf("%c",&x);
}
t=L;
while(t->data!='\n')
{
printf("%c",t->data);
t++;
}
for(;S->top!=NULL;)
{
y=p->data;
S->top=p->next;
free(p);
*a=y;a++;
}
printf("%s",a);
}
}
帮我看看那里不对,为什么不对,太感谢啦!

回复

使用道具 举报

千问 | 2009-3-17 19:21:34 | 显示全部楼层
感觉你的程序问题好多~~~我改了好多处,都忘记是改哪了,呵呵~~~你自己看下吧~~~#include #include #define NULL 0 typedef struct stackNode { char data; struct stackNode *next; }StackNode; typedef struct { StackNode *top; }LinkStack; void main() {LinkStack *S;StackNode *L,*p,*t;char x,y,*a,*b;S=(LinkSt...
回复

使用道具 举报

千问 | 2009-3-17 19:21:34 | 显示全部楼层
语法描述错误,试把后缀改成CPP用c++来编译。...
回复

使用道具 举报

千问 | 2009-3-17 19:21:34 | 显示全部楼层
intmax(inta,b);这个地方多了一个分号,因为不是函数声明,而是函数定义,如下就OK了intmax(inta,b){if(a>b)temp=a;elsetemp=b;returntemp;}...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行