这可能是一个非常愚蠢的问题,但我找不到解决问题的方法。 我在尝试编译此程序时收到此错误消息: Exercise1.c:28.1:exepted标识符或'('''''''之前的标记符。 你能解释一下我做错了什么吗?感谢。
#include <stdio.h>
#include <stdlib.h>
typedef struct II_node_struct
{int info;
struct II_node_struct *next;}II_node;
II_node* push(II_node* lis,int);
II_node* pop(II_node* lis);
int main()
{
II_node* pila;
II_node* corr=pila;
int x;
while(x>=0)
{scanf(" %d",&x);
if(x>0)
corr=push(corr,x);
if(x==0)
corr=pop(corr);}
while(corr->next!=NULL)
{printf("%d\n",corr->info);
corr=corr->next;}
return 0;
}
II_node* pop(II_node* lis);
{
II_node* risultato;
if(lis==NULL)
risultato=lis;
if(lis->next==NULL)
{risultato=lis;
free(lis);}
else
{risultato=lis->next;
free(lis);}
return risultato;
}
II_node* push(II_node* lis,int x)
{
II_node* new=malloc(sizeof(II_node));
if(lis==NULL)
{lis=new;
new->next=NULL;
new->info=x;}
else
{new->next=lis;
lis=new;}
return lis;
}