awesome-c AwesomeList Status

精选的C好的东西列表. 此列表仅包含* free software 代码,以及对物质资源没有恶意的卖方.

寻找维护人员:该列表当前处于非活动状态. 我正在寻找可以使其再次变得出色的维护者. 看到 #26 以获得更多信息,但过程很简单:在此列表中添加或修复几件事,您将成为850+星列表的贡献者.

此列表先前由 @kozross . 他决定将清单切换为 new platform,因此我决定将其分叉,以便我们可以将其保留在GitHub上.

Contents

Build Systems

这些是使C中项目的构建和测试自动化的工具.

Compilers

Compiler libraries

用于编译器,解释器和基于低级项目的库.

Compression

Crypto

Database

这列出了带有C API的数据库和数据存储.

Deep Learning

  • Darknet -用C和CUDA编写的开源神经网络框架. 它快速,易于安装,并支持CPU和GPU计算.

Documentation Generation

Editors

这些是特别高级的IDE类型的编辑器. 如果需要程序员的文本编辑器,请在其他地方查找. 此外,无论您做出何种选择,无论如何都支持C.

Embedded Systems

这些项目使人们可以使用微控制器和其他资源受限的体系结构.

RTOS

实时操作系统(RTOS)旨在为处理延迟低延迟的数据的实时应用程序提供服务.

  • Amazon FreeRTOS -用于微控制器的RTOS,使小型,低功耗边缘设备易于编程. MIT
  • ChibiOS -具有完整开发环境(HAL,驱动程序,支持文件和工具)的RTOS. Various Licenses
  • Contiki -将低成本,低功耗的微控制器连接到Internet. 3-clause BSD
  • Zephyr Project -可扩展的实时RTOS,支持多种硬件体系结构,针对资源受限的设备进行了优化. Apache 2.0
  • RIOT OS -实时多线程操作系统,它支持物联网中通常存在的一系列设备. LGPL-2.1

Environments

这是旨在将Windows引入C语言支持的21世纪的技术列表.

Frameworks

本部分包含大型库,这些库提供了数据结构和您期望的“现代”标准库的其他内容.

Game Programming

Engines

这些作为C游戏编程代码的示例提供.

Resources

These are libraries of all sorts that are useful for game programming.

Generic Programming

  • klib -通用算法和数据结构的小型轻量级实现. MIT

Graphics

Graphic APIs

  • OpenGL -行业采用2D和3D图形API. 的更多资源 awesome-opengl.
  • OpenGL ES -工业界为移动和嵌入式设备采用了2D和3D图形API.
  • OpenGL SC -适用于需要系统安全认证的行业的图形和计算标准.
  • Vulkan -用于现代跨平台开发的显式图形和计算API. 的更多资源 awesome-vulkan.

Graphical User Interface

这些是专门 widget toolkits.

Hashing

所有与哈希相关的库,无论是否加密.

Image Processing

JSON

Learning, Reference and Tutorials

这是用于一般学习C编程的资源列表,或与C编程有关的有用信息.

Online

Reference

Language Standards

Beginner

Intermediate

Advanced

Self-study courses

Physical

Reference

Beginner

Intermediate

Advanced

Macros

  • P99 -宏套件,用于实现高级功能,例如默认函数参数,作用域绑定的资源等(要求C99) Q Public License

Memory Allocators

用于各种系统和平台的内存分配器的实现.

  • jemalloc -通用malloc(3)实现,强调实现避免碎片化和可伸缩的并发支持,通常在生产系统中使用. FreeBSD
  • dlmalloc -Doug Lea的malloc(3)实现,可用于学术和研究目的. Public Domain
  • Hoard -适用于Linux,Windows,Mac和Solaris的快速,可扩展和内存高效的Malloc. GNU GPL2
  • nedmalloc -用C语言编写的EXTREMELY FAST便携式线程缓存malloc(3)实现. GNU GPL2
  • rpmalloc -跨平台,无锁的内存分配器. Public Domain

Multimedia

Networking and Internet

Web Frameworks

  • balde -基于GLib的C的微框架. GNU LGPLv2.1
  • onion -C库创建简单的HTTP服务器和Web应用程序. Apache 2.0
  • kore -易于使用,可扩展且安全的Web应用程序框架,用于用C编写Web API.
  • klone -KLone是功能齐全的多平台Web应用程序开发框架.
  • duda -Duda I / O是一个用C编写的事件驱动的高性能Web服务框架. Apache 2.0

Numerical

Parallel Programming

Parsers

Regex

>“有些人遇到问题时会想,'我知道,我会使用正则表达式.'现在他们有两个问题.” -杰米·扎温斯基.

Serialization

Source Code Collections

这包含小型源代码的集合. 如果您需要大型集成产品,请查看“框架”部分.

Standard Libraries

它包含标准的C库.

String Manipulation

Testing

Text Editor Extensions

尽管几乎任何体面的程序员的文本编辑器都支持C,但仍有一些扩展使其更令人愉悦. 这是由编辑器分类的.

Atom

Emacs

Vim

Tools

这是有用的程序列表,可帮助您编写和调试不是***编辑器,库或编译器的C代码.

Utilities

这是“包罗万象”的类别,用于在其他任何地方都不适合的内容.

XML

>“ XML是废话.真的.没有任何借口.XML对于人类而言是令人讨厌的解析,甚至对于计算机而言也是解析的灾难.根本没有理由存在这种可怕的废话.” -莱纳斯·托瓦尔兹