SGLIB – A Simple Generic Library for C 完全用宏实现,只有一个头文件。提供了如下功能:
- sorting arrays
- manipulating linked lists
- manipulating sorted linked lists
- manipulating double linked lists
- manipulating red-black trees
- manipulating hashed containers
网页提供的下载链接地址不对,提供个sourceforge的下载地址。下载的 tarball 里有 sample 和 doc,看下就知道怎么用了。
一个我比较喜欢的特点是数据结构完全由用户自己定义,sglib 帮你生成操作数据结构的宏,函数声明以及定义。这样做的好处是不需要因为使用库而对数据结构做修改。相比 queue.h,我觉得 sglib 的更容易使用和理解,而且有更多功能。