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 + -
显示快捷键?