stack.c

来自「在linux/UNIX上」· C语言 代码 · 共 94 行

C
94
字号
/**stack.h*		difine some function which make the stack run;*AUTHOR:liyangth@gmail.com;*VERSION:1.0;*DATE:2006-8-9;*/#include "stack.h"/*is stack empey?*PARAM:stack_s*;*RETURN:		0 : EMPTY;		1 : NOT EMPTY;*DATE:2006-8-8;*/int is_empty(stack_s* stack){	if (0 == stack->sp)		return 0;	else		return 1;}/*is stack full?*PARAM:stack_s*;*RETURN:		0 : FULL;		1 : NOT FULL;*DATE:2006-8-8;*/int is_full(stack_s* stack){	if (STACK_SIZE == stack->sp)		return 0;	else		return 1;}/*sp_value():*		show current sp value;*DATE:2006-8-8;*/int sp_value(stack_s* stack){	stack_s* tmp = stack;		if (is_empty(tmp))	{		return tmp->stack[tmp->sp - 1];	}	else	{		printf("Stack is empty!\n");		exit(EXIT_FAILURE);	}	}/*push to stack*/void push(stack_s* stack, int value){	stack_s* tmp = stack;		if (is_full(tmp))	{			tmp->stack[tmp->sp] = value;		tmp->sp++;	}	else	{		printf("Stack is full!\n");		exit(EXIT_FAILURE);	}}/*pop from stack*/int pop(stack_s* stack){	stack_s* tmp = stack;		if (is_empty(tmp))	{		tmp->sp--;		return tmp->stack[tmp->sp];	}	else	{		printf("Stack is empty!\n");		exit(EXIT_FAILURE);	}}

⌨️ 快捷键说明

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