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

来源:百度知道 编辑:UC知道 时间:2024/09/21 11:03:24
#include<stdio.h>
#include<stdlib.h>
#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++;
}<

感觉你的程序问题好多~~~我改了好多处,都忘记是改哪了,呵呵~~~
你自己看下吧~~~
#include<stdio.h>
#include<stdlib.h>
#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=(LinkStack *)malloc(sizeof(LinkStack));
a=(char *)malloc(100*sizeof(char));
b=a;
S->top=NULL;
// p=(StackNode *)malloc(sizeof(StackNode));
// L=p;
scanf("%c",&x);
while(x!='\n')
{
getchar();
p=(StackNode *)malloc(sizeof(StackNode));
p->next=S->top;
p->data=x;
// p->next=S->top;
S->top=p;
scanf("%c",&x);
}
t=S->top;

while(t)
{
printf("%c",t->data);
t=t-&g