stack.c~

来自「This program use for ExpEvaluation」· C~ 代码 · 共 46 行

C~
46
字号
#define STACK_SIZE 50   /*stack at most 50 elem*/#define STACK_ELEMENT_TYPE Datatype        /* Needs to change type for different program !*/typedef struct {        STACK_ELEMENT_TYPE elem[STACK_SIZE];        int top;}seqstack;void Initstack(seqstack *S){     S->top=-1;}int Isempty(seqstack *S){    return(S -> top == -1 ? TRUE:FALSE); }int Isfull(seqstack *S){    return (S -> top == (STACK_SIZE-1) ? TRUE:FALSE);}int Push(seqstack *S, STACK_ELEMENT_TYPE x){    if (S->top==STACK_SIZE)        return(FALSE);      /*stack is full*/    S->top++;    S->elem[S->top] = x;    return (TRUE);}int Pop(seqstack *S,STACK_ELEMENT_TYPE *x){    if(S->top==-1)       return(FALSE);   /*stack is empty*/    *x=S->elem[S->top];    S->top--;    return (TRUE);}STACK_ELEMENT_TYPE Gettop(seqstack *S){    STACK_ELEMENT_TYPE x;    if(S->top==-1)       printf("There is no element!\n");    x=S->elem[S->top];    return x;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?