seqstack.h

来自「简单的表达式求值算法」· C头文件 代码 · 共 87 行

H
87
字号
#define max_size 50
#define TRUE  1
#define FALSE 0
typedef struct
{
	int elem[max_size];
	int top;
}Seqstack1;
Seqstack1 OVS;

void Init(Seqstack1 *s)
{
	s->top=-1;
}

int Push(Seqstack1 *S,int x)
{
	if(S->top==max_size-1)
		return(FALSE);
	S->top++;
	S->elem[S->top]=x;
	return(TRUE);
}

int Pop(Seqstack1 *S,int *x)
{
	if(S->top==-1)
		return(FALSE);
	else
	{
		*x=S->elem[S->top];
		S->top--;
		return(TRUE);
	}
}

int Gettop(Seqstack1 S)
{
		
		return(S.elem[S.top]);
	
}




typedef struct
{
	char elem[max_size];
	int top;
}Seqstack2;

Seqstack2 OPTR;

void Init(Seqstack2 *s)
{
	s->top=-1;
}


int Push(Seqstack2 *S,char x)
{
	if(S->top==max_size-1)
		return(FALSE);
	S->top++;
	S->elem[S->top]=x;
	return(TRUE);
}

int Pop(Seqstack2 *S,char *x)
{
	if(S->top==-1)
		return(FALSE);
	else
	{
		*x=S->elem[S->top];
		S->top--;
		return(TRUE);
	}
}

char Gettop(Seqstack2 S)
{
		
		return(S.elem[S.top]);
	
}

⌨️ 快捷键说明

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