前面已经讲了一些C中基本的内存管理的方式,Fist-fit, Best-fit都是基于对象的大小来分配或者找到合适的大小的。当涉及到大量的malloc,free的时候频繁的系统调用肯定会影响到系统的性能,这里有一种更有效的内存管理方式是基于块的内存分配方式也是我们经常说的内存池(在软件的世界中你可以发现很多类似的池化设计),下面来实现一个简单的内存池。 我们使用如下的数据结构来管理内存池: struct T { T prev; char *avail; char *limit; }; prev指向存储块的头, avail指向第一个可用地址,limit指