Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "intel_stack_lib.h"
- #include <stdlib.h>
- #include <stdio.h>
- #include <stdbool.h>
- void init(stack_s * s, int size) {
- s->stack_size = size;
- s->stack = calloc(size, sizeof(int));
- s->stack_pointer = size;
- }
- bool is_empty(stack_s * s) {
- if (s->stack_pointer == s->stack_size) {
- return true;
- }
- else {
- return false;
- }
- }
- bool is_full(stack_s * s) {
- if (s->stack_pointer == 0) {
- return true;
- }
- else {
- return false;
- }
- }
- bool push(stack_s * s, int * data) {
- if (!is_full(s)) {
- s->stack[--(s->stack_pointer)] = *data;
- return true;
- }
- else {
- return false;
- }
- }
- bool pop(stack_s * s, int * data) {
- if (!is_empty(s)) {
- *data = s->stack[(s->stack_pointer)++];
- return true;
- }
- else {
- return false;
- }
- }
- void destroy(stack_s * s) {
- free(s->stack);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement