|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
楼主写入栈函数的时候出现了以下问题
函数执行到申请空间那里就直接退出了。
代码如下:
#define STACK_INIT_SIZE 100
typedef int SElemType;
typedef int Status;
typedef struct{
SElemType *base;//栈底
SElemType *top;//栈顶
int stacksize;//当前已分配的存储空间
}sqStack;
Status InitStack(sqStack *S){
//创建一个栈
printf("0");//用作判断函数执行到哪里,执行到下一句就会直接退出
S->base = (SElemType *)malloc(STACK_INIT_SIZE * sizeof(SElemType));
if(!S->base){//如果分配不到空间
exit(OVERFLOW);
}
S->top = S->base;
S->stacksize = STACK_INIT_SIZE;
return OK;
}
主函数
int main()
{
sqStack *S;
int E;
int *e;
e = E;
InitStack(S);
printf("%d",StackEmpty(S));
DestroyStack(S);
return 0;
} |
|