1ffc6e1402fa8de52c1879f2b2c23f998188a358
arena.h
A single header library that implements region-based memory management in C using a linked list approach.
Example
#define ARENA_IMPLEMENTATION
#include "arena.h"
int main(void)
{
Arena a = {0}; // or arena_create(...) to specify a custom region
// capacity just for this arena
int *x = arena_alloc(&a, sizeof(*x) * 32);
float *y = arena_alloc(&a, sizeof(*y) * 512);
arena_free(&a); // The arena can still be reused
return 0;
}
Languages
C
99.3%
Makefile
0.7%