Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/62.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.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一起使用第三方ADT(GLib、sys/queue.h等)_C - Fatal编程技术网

与C一起使用第三方ADT(GLib、sys/queue.h等)

与C一起使用第三方ADT(GLib、sys/queue.h等),c,C,我想我的项目需要一个链表ADT,不幸的是似乎没有C的实际实现 在Google上出现的两个更频繁的选项是使用sys/queue.h和GTK+GLib 我绝对不认为我尝试重新发明轮子并自己编写它们有任何意义 我目前正在使用GNU工具链在linux下开发——如果我以后必须移植到Windows并将这些库嵌入到代码中,我是否有可能为自己制作一个棒呢 有了一个友好的网站和良好的文档,这些油嘴滑舌的东西看起来很不错。这可以被认为是C++的STL(或者可能的Boost)等价于C? 总而言之,我想重用代码,但我想

我想我的项目需要一个链表ADT,不幸的是似乎没有C的实际实现

在Google上出现的两个更频繁的选项是使用sys/queue.h和GTK+GLib

我绝对不认为我尝试重新发明轮子并自己编写它们有任何意义

我目前正在使用GNU工具链在linux下开发——如果我以后必须移植到Windows并将这些库嵌入到代码中,我是否有可能为自己制作一个棒呢

有了一个友好的网站和良好的文档,这些油嘴滑舌的东西看起来很不错。这可以被认为是C++的STL(或者可能的Boost)等价于C?
总而言之,我想重用代码,但我想重新使用正确的代码。

在C中,没有“正确的代码”可供重用。如果您不介意它的庞大性和缓慢的实现,GLib是一个不错的选择。由于它使用autoconf构建系统,您也会发现在windows下编译它很痛苦。

在C中,没有“正确的代码”可供重用。如果您不介意它的庞大性和缓慢的实现,GLib是一个不错的选择。由于它使用autoconf构建系统,您也会发现在windows下编译它很痛苦。

GLib
是一个很好的选择,您已经发现它有很好的文档。如果你正在寻找链表,我想linux内核有我想你可以重用的。所以我不会在这三个选项中的任何一个上犯严重错误?我想不会。但是你必须考虑到1。如果您使用GLib有一个额外的库依赖项,如果您没有问题,则罚款,2。如果您使用sys/queue.h,那么所有代码都在头文件中,因此您只需包含头文件3即可开始使用它。如果你想使用内核代码,我想从源代码中复制一点代码就可以了。最后,看看什么最适合你的账单,并使用它:)。。。祝你好运
GLib
是一个很好的选择,您已经发现,它有很好的文档。如果你正在寻找链表,我想linux内核有我想你可以重用的。所以我不会在这三个选项中的任何一个上犯严重错误?我想不会。但是你必须考虑到1。如果您使用GLib有一个额外的库依赖项,如果您没有问题,则罚款,2。如果您使用sys/queue.h,那么所有代码都在头文件中,因此您只需包含头文件3即可开始使用它。如果你想使用内核代码,我想从源代码中复制一点代码就可以了。最后,看看什么最适合你的账单,并使用它:)。。。祝你好运