C语言有哪些优秀的开源库?
如果想要了解c语言的开源库的话,其实可以直接从github上搜一下就可以找到很多,这里介绍个地址
里面的分类很全,一些常用的c语言库都收录了。
像是redis,mysql,nginx,这种大名鼎鼎c程序我就不说了,我这里简单介绍下,我曾经用过的几个C跨平台开源库吧
1.libuv
这个是异步跨平台的io库,与之类似的还有libevent,libuv作为nodejs的底层实现库,无论在使用方便程度上,还是性能和跨平台集成方面都做的非常不错,我平常做一些跨平台的网络通讯什么的都会使用这个库,在android,ios,windows,linux中可以比较容易的编译和运行。
2.mongoose
这是个非常强大的跨平台c网络通讯库,只需要一个.h和一个.c文件就可以直接集成到你的项目中,使用起来非常方便,特别是你开发的程序需要对外提供http的webapi,或者做一个简单的http文件服务器提供静态web浏览,都能简单的几行代码实现。它的缺点就是性能一般,通讯层是用select实现,能够处理的连接数有限,但是如果仅仅是用在物联网设备上,或者只是本机或局域网内几台机器之间进行通讯,那完全是可行的。同样,代码可以在android,ios,windows,linux上编译运行通过。
3.duktape
这是个嵌入式的跨平台js引擎,也是只需要一个.c和一个.h文件就可以集成到你的项目中。对js标准的支持也非常不错,完整的支持ES5和部分ES6。我就用mongoose和duktape组合开发过一个简单的web服务框架,一直比较稳定的运行在一个商业项目中。另外由于duktape也可以很方便的集成到android和ios项目中,如果业务逻辑很多都用js写的话,可以非常方便的实现代码的热更新。
4.libcurl
这个我确定应该大多数c开发者都熟悉,涉及http客户端的请求调用,基本上都离不开这个库。
5.mbedtls
一个嵌入式的tls库,可以和libcurl或者mongoose集成在一起提供https的支持
6.sqlite
客户端的嵌入式数据库,android和ios客户端开发可能再熟悉不过了,如果想在客户端使用数据库,确实是不二的选择。
网络上的开源库,还是很多的。
优秀的国外的居多。
没用到的不了解,有用到的这里列一列。
视频解析方面的,vlc。
界面美化方面的,duilib。
pdf阅读器方面的,mupdf。
cad绘图方面的,librecad。
文件压缩方面的,zlib。
视觉处理方面的,opencv。
就用过这么多啦。我是搞工业控制的,一般都与硬件打交道,涉及的库很少。
PDF文件可以用哪些软件打开?
PDF文件可以用以下几种软件打开:
1.Adobe Acrobat DC:Adobe Acrobat DC 是最常用的 PDF 阅读器之一,它能够阅读和编辑 PDF 文件,还能将其转换为其他格式,例如 Word、Excel、PowerPoint 等。
2.Foxit PhantomPDF:Foxit PhantomPDF 是一款功能强大的 PDF 阅读器,它具有多种高级功能,例如书签、注释、高亮显示、搜索和替换等。
3.Nitro Pro:Nitro Pro 是一款易于使用的 PDF 阅读器,它具有多种实用功能,例如快速导入文件、批量重命名、添加书签和注释等。
4.PDF-XChange Editor:PDF-XChange Editor 是一款功能丰富的 PDF 编辑器,它提供了各种工具,例如添加文本、图片、形状、表格、注释等,还能将 PDF 文件转换为多种其他格式。
5.ViewPad Air PDF:ViewPad Air PDF 是一款轻量级的 PDF 阅读器,它体积小巧,功能丰富,支持阅读、编辑、注释和标记等多种功能。
6.Sejda PDF:Sejda PDF 是一款免费的在线 PDF 阅读器,它提供了多种语言的文档,包括 English、German、法语、西班牙语等,支持本地和在线阅读。
这些软件都可以很好地打开和编辑 PDF 文件,你可以根据自己的需要选择合适的软件。

