ime_2/Exercícios/07 - Filas/dynamicArray.c

25 lines
493 B
C

#include "./dynamicArray.h"
bool isEmpty(array *a) { return a->end == a->start; }
array *resize(array *a) {
a->capacity *= 2;
a->end -= a->start;
a->start = 0;
return realloc(a, a->capacity * sizeof(array));
}
void insert(array *a, int i) {
a->end++;
if (a->end == a->capacity)
a = resize(a);
a->values[a->end] = i;
}
int pop(array *a) { return isEmpty(a) ? EOF : a->values[a->start++]; }
void freeArray(array *a) {
free(a->values);
free(a);
}