25 lines
628 B
C++
25 lines
628 B
C++
#pragma once
|
|
|
|
#include <cstdlib>
|
|
#include <stdio.h>
|
|
|
|
#define min(a, b) ((a < b) ? a : b)
|
|
#define max(a, b) ((a > b) ? a : b)
|
|
|
|
typedef unsigned int uint;
|
|
|
|
template<class T> struct array {
|
|
T* data;
|
|
size_t len;
|
|
size_t cap;
|
|
inline T& operator[](int i) { return data[i]; }
|
|
};
|
|
|
|
template<class T> void append(array<T>& a, T el);
|
|
template<class T> T pop(array<T>& a);
|
|
template<class T> void resize(array<T>& a, size_t new_cap);
|
|
template<class T> void free(array<T>& a);
|
|
bool read_file(array<char>* out, const char* filepath);
|
|
array<char*> split_str(const char *s, char delimiter);
|
|
array<char*> split_str(const char *s);
|