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语言中的类Boost库_C_Boost - Fatal编程技术网

C语言中的类Boost库

C语言中的类Boost库,c,boost,C,Boost,您能推荐我可以在C环境中使用的同行评审库(类似于Boost for C++)吗?提供散列、线程、进程间通信、列表、智能内存管理 环境是嵌入式系统,不是一个非常简单的系统,也不是一台PC 我不确定你是否能找到一个涵盖所有这些内容的图书馆。。。但你可以退房,并涵盖一个很好的一点。我也是。另外,它也有自己的功能,所以如果不想学习pthread,就不必学习pthread 不确定在C语言中是否存在“智能内存管理”这样的东西,如果没有析构函数的安全网和对操作员的控制,这并不容易。但是,GLib同样拥有大量面

您能推荐我可以在C环境中使用的同行评审库(类似于Boost for C++)吗?提供散列、线程、进程间通信、列表、智能内存管理


环境是嵌入式系统,不是一个非常简单的系统,也不是一台PC

我不确定你是否能找到一个涵盖所有这些内容的图书馆。。。但你可以退房,并涵盖一个很好的一点。我也是。另外,它也有自己的功能,所以如果不想学习pthread,就不必学习pthread

不确定在C语言中是否存在“智能内存管理”这样的东西,如果没有析构函数的安全网和对操作员的控制,这并不容易。但是,GLib同样拥有大量面向内存的数据结构和东西,它们确实让生活变得更轻松


不,我不是能说会道的人,但我真的很喜欢

我也要加入这个能说会道的潮流。请记住,C并没有为复杂的数据结构提供任何语法糖,所以GLib中有很多类型转换和长函数名,但它确实做了一项伟大而高效的工作,只需添加一点详细内容

看看一个广泛使用的C(或C++)保守型垃圾收集器,它可以满足智能内存管理方面的需要。

关于Glib的使用

您可能需要什么,然后交叉编译它。因此,如果您只需要线程包,只需编译它,而不需要全部

我正在用Python虚拟机做同样的事情。PyMite安装在微控制器上,不使用所有功能。

查看该项目

它的一些特点:

  • 内存管理API
  • 线程、互斥体
  • 文件I/O
  • 原子操作
  • 哈希表、数组
  • 网络套接字和协议
  • 共享内存

更不用说它是可移植的。

我忘了在前面添加环境是嵌入式系统(我不是指非常简单的系统,也不是PC)。Glib推荐在那里也能用吗?我想知道这一点-因为我有一个ARM micro平台,我正在使用它。只要你从源代码编译库,它可能就可以了。不是真的,但是你可以自己制作C包装库。看这里:很好。添加到我要查看的内容列表中。但是,在将GC与非GC代码混合时,应该小心,例如,仅将对GC块(使用GC_MALLOC创建的块)的引用存储到非GC块(使用MALLOC创建的块)中可能会过早地回忆该块!(至少根据GC的语义,我自己没有尝试过,如果我错了,请纠正我。)想知道是否有一些很好的GC感知实用程序库。有没有像Boost这样的正则表达式函数库?@Ehsan我不知道,我从未使用过Boost。而且,这种风格的问题现在有点不受欢迎。你知道C的正则表达式库吗?比regex.h更好的东西?@Ehsan你读过你评论的答案吗?警告:Glib使用LGPL许可证,这比Boost许可证更严格。因此,使用前请仔细阅读详细说明。