求助Unhandled exception in fso.exe:0xC0000005:Access Violation的问题?
#include<stdio.h>#include<stdlib.h>
#include<string.h>
#define MAX 100
typedef char datatype;
typedef struct
{
int top;
datatype elem[MAX];
}stack;
void initstack(stack &s)
{
s.top=-1;
}
int stackempty( stack s)
{
if(s.top==-1)
return 1;
else
return 0;
}
int stackfull( stack s)
{
if(s.top==MAX-1)
return 1;
else
return 0;
}
void push(stack &s,datatype elem)
{
if(!stackfull(s))
{
s.elem[s.top++]=elem;
}
else
printf("栈已满\n");
}
datatype pop(stack &s)
{
if(!stackempty(s))
return s.elem[s.top--];
else
{printf("栈空");
return 0;}
}
int huiwen(char *t)
{
int i,len;
char temp;
bool flag=0;
stack s;
initstack(s);
len=strlen(t);
for(i=0;i<len/2;i++)
{push(s,t[i]);
}
while(!stackempty(s))
{
for(i=len/2;i<len;i++)
{
temp=pop(s);
if(temp==t[i])
flag=1;
if(temp!=t[i])
break;
}
}
return flag;
}
int main()
{
char t[100];
printf("请输入一串字符\n");
while(1)
{
scanf("%s",&t);
if(huiwen(t))
printf("yes");
else
printf("no");
}return 0;
}
在运行的时候出现了此问题,该怎么处理,求高手