C Custom Allocator