我的要求是补全我发出的代码
时间: 2024-03-02 08:49:07 浏览: 56
补单源代码
3星 · 编辑精心推荐
非常抱歉,我理解错了你的要求。这是一段 C 语言的栈操作函数的代码,其中有一些函数需要你补全代码,我来帮你完成:
```c
#include <stdio.h>
#include <malloc.h>
#define MaxSize 100
typedef char ElemType;
typedef struct {
ElemType elem[MaxSize];
int top;
// 栈指针
} SqStack;
void InitStack(SqStack **s) {
*s = (SqStack *)malloc(sizeof(SqStack));
(*s)->top = -1;
}
void ClearStack(SqStack *s) {
s->top = -1;
free(s);
}
int StackLength(SqStack *s) {
int len = 0;
while(s->top != -1) {
len++;
s->top--;
}
s->top += len;
return len;
}
int StackEmpty(SqStack *s) {
if (s->top == -1) {
return 1;
} else {
return 0;
}
}
int Push(SqStack *s, ElemType e) {
if (s->top == MaxSize - 1) {
return 0;
} else {
s->top++;
s->elem[s->top] = e;
return 1;
}
}
int Pop(SqStack *s, ElemType &e) {
if (s->top == -1) {
return 0;
} else {
e = s->elem[s->top];
s->top--;
return 1;
}
}
int GetTop(SqStack *s, ElemType *e) {
if (s->top == -1) {
return 0;
} else {
*e = s->elem[s->top];
return 1;
}
}
void DispStack(SqStack *s) {
while(s->top != -1) {
printf("%c\n", s->elem[s->top]);
s->top--;
}
}
```
希望这份代码可以帮到你。如果你还有其他问题,欢迎随时提出。
阅读全文