Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C语言中有通用数据类型库吗?_C_Data Structures - Fatal编程技术网

C语言中有通用数据类型库吗?

C语言中有通用数据类型库吗?,c,data-structures,C,Data Structures,我正在尝试用C编写一个2d游戏引擎(没有C++)。有哪些好的库具有我可能需要的通用数据类型?例如队列、树、地图、列表等?不确定这是否是您想要的答案,但关于这一主题的有用阅读是 HTH看看——它有树、哈希映射、链表和队列 如果你在Mac上,你将拥有所有的基本数据结构,在.中。如果你不想使用像GLIB这样的重量级库来使用数据结构,考虑我的轻量级版本,它很大程度上是基于代码中产生的。它目前的特点是: 动态数组 双链表 散列图 二叉搜索树 您可以尝试列表中提到的任何一种 这里列出的大多数库最酷的一点

我正在尝试用C编写一个2d游戏引擎(没有C++)。有哪些好的库具有我可能需要的通用数据类型?例如队列、树、地图、列表等?

不确定这是否是您想要的答案,但关于这一主题的有用阅读是

HTH

看看——它有树、哈希映射、链表和队列


如果你在Mac上,你将拥有所有的基本数据结构,在.

中。如果你不想使用像GLIB这样的重量级库来使用数据结构,考虑我的轻量级版本,它很大程度上是基于代码中产生的。它目前的特点是:

  • 动态数组
  • 双链表
  • 散列图
  • 二叉搜索树

您可以尝试列表中提到的任何一种

这里列出的大多数库最酷的一点是,它们中的大多数仍然是积极维护的,因此如果您决定专业地使用它们,您就不会继承一个死库


根据维基百科,您可以使用的另一个列表是

——是的,跨平台,尽管没有列出平台。这是一个好主意。但glib还有很多我不需要的东西。是否有一个只有数据类型的精简版glib。如果它是静态库,则只有相关的对象文件会与二进制文件链接。无论如何,我想你可以滚动你自己的版本,只包含你需要的对象文件。glibforwin32是一小部分DLL:s,用于主要组件(“core”、GObject、GIO、GModule、GThread”)。总大小约为1.8MB。根据我的经验,在OS X上构建glib作为一个动态库以便在我的应用程序中分发它是一件痛苦的事情——尤其是找到所有依赖项并让它们进行编译。因此,虽然GLIB理论上是跨平台的,但要在其他平台上工作需要大量的工作。我正在寻找一种更跨平台的解决方案。核心基础也可以在Windows上使用,我猜也可以在Linux上使用。