awesome-c-cn
C resources
A comprehensive resource collection for C language development
C 资源大全中文版,包括了:构建系统、编译器、数据库、加密、初中高的教程/指南、书籍、库等。
6k stars
501 watching
2k forks
last commit: almost 2 years ago
Linked from 1 awesome list
C 语言资源大全中文版 / 我们要做什么? | |||
伯乐在线资源频道 | 整理后的内容,将收录在 。可参考已整理的内容: | ||
C 语言资源大全中文版 / 我们要做什么? / 伯乐在线资源频道 | |||
libPhenom:Facebook开源的高性能C语言并发编程框架 | 《 》 | ||
C 语言资源大全中文版 / 本项目的参与者 | |||
Yonah潇 | 贡献者: 、 、 、 、 、 、 | ||
C 语言资源大全中文版 / 构建系统 | |||
GNU GPL3 | aimake:一个被设计来避免复杂配置的构建工具。 或更高版本。 | ||
GNU GPL3 | Autoconf:一个可扩展的 M4 宏指令包,提供命令行脚本来自动配置软件源码包,是 Autotools 的一部分。 或更高版本。 | ||
GNU GPL3 | Automake:一个自动生成符合 GNU 代码标准的 Makefile.in 文件的工具。需要与 Autoconf 配合使用,它也是 Autotools 的一部分。 或更高版本。 | ||
Jam License | Jam:一个构建系统,它被设计的比make更加易用。隐式地理解 C 的构建规则。 。 | ||
GNU GPL3 | Libtool:一个通用库支持脚本,是 Autotools 的一部分。 或更高版本。 | ||
Apache2.0 | Meson:一个非常快,用户友好的构建系统,基于 Ninja。 。 | ||
C 语言资源大全中文版 / 编译器 | |||
NCSA | Clang:一个基于 LLVM 的 C 的编译器,支持 C11 标准。 。 | ||
GNU GPL2.1 | CompCert:一个经过充分验证的 C 编译器。支持几乎所有的 C89 标准。 或更高版本。 | ||
GNU GPL3 | GCC:在它的编译器集合中提供了 C 编译器。支持 C11 和 OpenMP 的标准。 或更高版本。 | ||
Various licenses | PCC:一个值得尊敬的 C 编译器,支持 C99 标准。 ,完全免费。 | ||
LGPL2.1 | TCC:一个迷你,速度快的 C 编译器,支持 C99(除了复杂的类型)。 。 | ||
C 语言资源大全中文版 / 加密 | |||
GNU GPL2.1 | GnuTLS:一个安全通信库,实现了 SSL,TLS 和 DTLS。 或更高版本。 | ||
GNU LGPL2.1 | libgcrypt:一个通用的密码库,支持多种加密方法。 (代码), 或更高版本(说明书和工具)。 | ||
Dual Licensed under the OpenSSL License and the SSLeay License | OpenSSL:一个 SSL 和 TLS 协议的实现,还包括一个加密库。 。 | ||
Expat | libsodium:一个现代,易用的加密库。 。 | ||
官网 | 1,569 | 15 days ago | libtomcrypt:一个相当全面,模块化和可移植的工具集。公开领域。 |
Apache2.0 | mbed TLS:一个 C 实现的加密库。 。 | ||
C 语言资源大全中文版 / 数据库 | |||
GNU AGPLv3 | BerkeleyDB:一个高性能的嵌入式键值对数据库。 。 | ||
3-clause BSD | Hiredis:一个极简的 Redis 客户端。 。 | ||
newOpenLDAP | LMDB:一个极快,极简的嵌入式键值对数据存储系统。 。 | ||
3-clause BSD | MariaDB:一个强壮,可扩展和可靠的 SQL 服务器,设计来作为 MySQL 的替代品。 。 | ||
Apache2.0 | mongo-c-driver:一个高性能的 MongoDB 客户端。 | ||
PostgreSQL licence | PostgreSQL:一个强大的对象关系数据库系统。 。 | ||
GNU GPL3 | recutils:一个工具和 C 库的集合,用于访问可编辑,纯文本的名为 recfiles 的数据库文件。 或更高版本。 | ||
3-clause BSD | Redis:一个先进的键值对存储系统。 。 | ||
FreeBSD | sophia:一个现代,可嵌入的键值对数据库。 。 | ||
官网 | SQLite:一个自包含,无服务器,零配置,支持事务的 SQL 数据库引擎,包括 C 接口。公开领域。 | ||
FreeBSD | UnQLite:一个自包含,无服务器,零配置,支持事务的 NoSQL 数据库引擎,包括 C 接口。 。 | ||
C 语言资源大全中文版 / 文档生成 | |||
GPL2.1 | Cxref:生成 C 程序的文档,支持 LaTeX,HTML, RTF 或者 SGML 的格式。 | ||
BSD-3clause | DocOnce:一种朴素的标签标记语言,可以用来生成多种格式的文档。 | ||
GNU GPL2.1 | Doxygen:一个事实上的标准工具,用于从注释的代码中生成 C 文档。能够生成多种格式的文档。 。 | ||
GNU GPL2.1 | GTK-Doc:一个从注释的代码中生成 C 文档的工具,支持 Autotools (代码), 。 | ||
C 语言资源大全中文版 / 编辑器 | |||
GNU GPL2.1 | Anjuta DevStudio:GNOME IDE。 。 | ||
GNU GPL3 | Code::Blocks:一个可扩展,可配置的 IDE,支持 C。 。 | ||
GNU GPL2.1 | CodeLite:一个跨平台的 IDE。 。 | ||
EPL | Eclipse:一个用 Java 写成的 IDE。 。 | ||
GNU GPL2.1 | Geany:一个很小很快的 IDE。 及更高版本。 | ||
GNU GPL2.1 | KDevelop:KDE IDE. 。 | ||
官网 | CLion:JetBrains 推出的 C/C++ 跨平台集成开发环境。 | ||
C 语言资源大全中文版 / 环境 | |||
Various licenses, all free | Cygwin:被设计用于在 Windows 下模拟 POSIX 兼容环境。 。 | ||
Various licenses, all free | MinGW-w64:一个 Windows 下极简的 C 开发环境,支持 64 位。 。 | ||
C 语言资源大全中文版 / 框架 | |||
Apache2.0 | APR:Apache Portable Runtime;另一个跨平台的实用函数库。 。 | ||
官网 | 3,350 | about 1 year ago | C Algorithms:一个常用算法和数据结构的集合。 |
GNU GPL2.1 | CPL:The Common Pipeline Library;一系列详尽,高效和强壮的软件工具包。 。 | ||
官网 | EFL:一个大型实用数据结构和函数的的集合。多种许可证,完全免费。 | ||
GNU LGPL2.1 | GLib:一个便携,高效和强大的实用函数和数据结构库。 。 | ||
官网 | GIO:一个现代和易用的 VFS API。[GNU LGPL2.1]。 | ||
GNU LGPL2.1 | GObject:一个 C 的面向对象系统和对象模型。 。 | ||
GNU GPL2.1 | libnih:一个轻量级的 C 函数和数据结构库。 。 | ||
官网 | libU:一个提供基本实用函数的迷你库,包括内存分配,字符串处理和日志功能。 | ||
GNU LGPL2.1 | PBL:一个包括实用函数,特色数据结构等的大型库。 及更高版本(库), 及更高版本(测试代码)。 | ||
qLib license | 984 | 6 months ago | qlibc:一个简单且强大的 C 库,当我们想要小且轻的库时,可作为 Glib 的替代品。 (类似于 )。 |
官网 | 27,014 | 15 days ago | stb:一系列单文件 C 库。公共领域。 |
libcstl | :标准C语言通用数据结构和常用算法库。 | ||
C 语言资源大全中文版 / 游戏编程 / 引擎 | |||
Corange | :一个纯 C 的游戏引擎。 。 | ||
GNU GPL2.1 | Darkplaces:一个 Quake2 引擎的修改版本。 。 | ||
GNU GPL2.1 | ioquake3:Quake3 引擎,终于免费啦。 。 | ||
zlib | Orx:一个便携,轻量级,插件化,数据驱动,面向 2D 的游戏引擎。 。 | ||
Quake2 | :Quake2 引擎。 。 | ||
GNU GPL3 | Spearmint:一个为 FPS 游戏设计的引擎。 及更高版本。 | ||
C 语言资源大全中文版 / 游戏编程 / 资源 | |||
zlib | Allegro:一个跨平台,视频游戏开发和多媒体库。 。 | ||
Expat | Chipmunk2D:一个快且轻量级的 2D 游戏物理库。 。 | ||
SFML | CSFML:一个用 C 封装的 。 。 | ||
X11 | FreeGLUT:一个替代性的 OpenGL 实用工具包。允许用 OpenGL 上下文创建和管理窗口。 。 | ||
zlib | GLFW:一个使用 OpenGL 上下文创建窗口的多平台库。 。 | ||
GNU GPL2.1 | libao:一个有多种输出的跨平台音频库。 及更高版本。 | ||
libretro | RetroArch: 的参考前端。 。 | ||
zlib | SDL:一个跨平台库,通过 OpenGL 提供音频,键盘,鼠标,操纵杆和图形硬件的底层访问。 。 | ||
zlib | SDL2:一个跨平台库,通过 OpenGL 提供音频,键盘,鼠标,操纵杆和图形硬件的底层访问。这是最新版本。 。 | ||
C 语言资源大全中文版 / 通用编程 | |||
Expat | klib:小且轻量级的常用算法和数据结构实现。 。 | ||
C 语言资源大全中文版 / 图形 | |||
GNU LGPL2.1 | Cairo:一个 2D 图像库。 或者 。 | ||
Expat | Cogl:一个 GPU 图像和实用 API。 (依赖使用 许可,库使用 许可)。 | ||
GNU LGPL2.1 | Clutter:一个基于 OpenGL 的 UI 库。 。 | ||
Expat | heman:一个迷你图像实用工具库,处理高度图,法线图,距离场等。 。 | ||
WTFPLv2 | libcaca:一个基于终端接口的 ASCII 渲染器。 。 | ||
FreeBSD | libimagequant:小且轻量级的库,用于高质量的从 RGBA 图像到 8 位像素图的转换。 。 | ||
Various licences | libjpeg-turbo:一个更快的读写 JPEG 文件库。 。 | ||
libpng license | libpng:官方 PNG 参考库。 。 | ||
GNU GPL3 | libxmi:一个光栅化 2D 位图的函数库。 或更高版本。 | ||
3-clause BSD | mozjpeg:一个提升 JPEG 图像质量的编码器。 。 | ||
Various licenses | OpenGL:一个高性能图像的工业标准,提供了原生 C语言 绑定。 。 | ||
Craft | :一个利用OpenGL使用C编写的简单MineCraft的克隆。 、 | ||
C 语言资源大全中文版 / GUI | |||
GNU LGPL2.1 | GTK+:一个跨平台的控件工具包。 。 | ||
Expat | IUP:另一个跨平台的控件工具包。 。 | ||
Tcl/Tk License | Tk:一个基本控件工具包,Tcl/Tk 的一部分。 。 | ||
GNU LGPL2.1 | XForms Toolkit:一个为 XWindow 设计的控件工具包。 。 | ||
C 语言资源大全中文版 / JSON | |||
Expat | Jansson:一个编码,解码和处理 JSON 的 C 库。 。 | ||
Expat | jsmn:一个极简的 JSON 解析器。 。 | ||
Expat | json-c:一个处理 JSON 的库。 。 | ||
官网 | 108 | 9 months ago | WJElement:高级 JSON 处理库,支持 JSON Schema。任意版本的 LGPL。 |
ISC | YAJL:一个很快的 JSON 流解析 C 库。 。 | ||
C 语言资源大全中文版 / 学习、参考和指南 / 在线 | |||
SEI CERT C 编码标准 | |||
C FAQ:comp.lang.c 常见问题 | |||
GNU/Linux 下 C/POSIX 标准库实现的比较 | |||
C11 标准草案 | |||
GNU C 参考手册 | |||
Robert Pike 的 C 笔记 | |||
指针教程 | |||
C 语言指针 5 分钟教程 | |||
C 语言内存地址基础 | |||
C 语言函数指针基础 | |||
C 语言指针和数组基础 | |||
构建 C 项目 | |||
C 编程百科全书 | |||
“有趣”的 C 介绍 | |||
用 GDB 学习 C | |||
POSIX 线程编程指南 | (有点过时,但大部分还是有效和有用的) | ||
GNU C 编程指南 | (在线 PDF) | ||
C 语言中的模板 | |||
8 个你应该知道的 GDB 技巧 | |||
10 个 C99 技巧 | |||
深入并发:尝试互斥锁和原子操作 | |||
OpenMP 介绍 | (视频) | ||
OpenMP 指南 | (针对 OpenMP3 标准) | ||
memcpy 与 memmove 的比较 | |||
MPI 指南 | |||
C 语言中一些未知特性或者技巧 | |||
失落的 C 语言结构体封装艺术 | |||
C 程序员需要了解的内存知识 | |||
每个 C 程序员需要知道的未定义行为知识 | |||
C 中的高级元编程 | |||
一个快速教程:如何实现和调试 malloc,free,calloc,和 realloc | |||
位操作技巧 | |||
我不懂 C | |||
在 C 语言中实现智能指针 | |||
C 中的内联函数 | |||
C 中的自定义控制结构元编程 | |||
用 C 的宏解决临时内存问题 | |||
C 语言中一些不为人知的角落 | |||
编写高效的 C 和 C 代码优化 | |||
C 语言认证协会预备课程 | |||
C 语言资源大全中文版 / 学习、参考和指南 / 实体书 | |||
C: A Reference Manual 5E | :C99 完全参考手册 | ||
C Pocket Reference | :C99 简明参考手册 | ||
The C Programming Language 2E | :第一本 C 语言书籍,由 C 的创造者编写。 | ||
C Primer Plus 6E | :一个全面的 C11 编程指南。 | ||
C Programming: A Modern Approach | :一本极好的学习 C 基础的书。 | ||
Head First C | :一本“深入浅出”风格的学习 C 的书籍。 | ||
21st Century C | :一本非常好的 C 语言书籍,可作为第二选择。 | ||
Understanding and Using C Pointers | :一本深入讨论 C 指针的书。 | ||
ZeroMQ | :一本介绍如何用 C 使用 ZeroMQ 的书。 | ||
Expert C Programming: Deep C Secrets | :一本从有趣,深度和娱乐的视角分析 C 内部结构的书籍。 | ||
C 语言资源大全中文版 / 多媒体 | |||
GNU LGPL2.1 | FFMPEG:一个完整,跨平台的录音,转换和流化视频以及音频的解决方案。 或更高版本,部分是 或更高版本。 | ||
GNU LGPL2.1 | GStreamer:一个声音和可视化媒体的框架。 。 | ||
3-clause BSD | lodepng:一个简单的 PNG 图像解码器和编码器,不需要其他依赖。 | ||
C 语言资源大全中文版 / 网络编程 | |||
FreeBSD | asnlc:一个把 ASN.1 规范转换为 C 代码的编译器。 。 | ||
官网 | 1,191 | 2 months ago | czmq:一个 ZeroMQ 的高级绑定。 |
GNU GPL3 | GNU adns:一个高级,易用,异步的 DNS 客户端和实用工具。 及更高版本。 | ||
GNU GPL3 | GNU SASL:一个简单身份认证和安全层和一些常见 SASL 机制的实现。 及更高版本。 | ||
GNU LGPL2.1 | GnuTLS:一个安全通信库,实现了 SSL,TLS 和 DTLS。 及更高版本。 | ||
Apache2.0 | gumbo-parser:一个 C99 标准的 HTML5 解析库。 。 | ||
Expat | http-parser:一个 HTTP 请求回应解析器。 。 | ||
3-clause BSD | ldns:一个简化 DNS 编程的库。 。 | ||
curl license | libcurl:一个客户端的 URL 转换库,支持多种格式。 。 | ||
3-clause BSD | LibEtPan:一个邮件库,支持 IMAP,SMTP,POP 和 NNTP 网络协议。 。 | ||
FreeBSD | libev:一个事件驱动库。 | ||
libevent | :一个在网络服务器中事件驱动库的可替代品。 。 | ||
GNU GPL3 | libgss:通用安全服务。 或更高版本。 | ||
GNU GPL2 | libhttpd:一个给应用或嵌入式设备添加基本 Web 服务器功能的库。 。 | ||
3-clause BSD | libhv:一个比libevent、libuv更易用的国产网络库,可用来开发 TCP/UDP/SSL/HTTP/WebSocket 客户端/服务端。 。 | ||
GNU GPL3 | libidn:Stringprep,Punycode 和 IDNA 规范的实现。 或更高版本。 | ||
GNU LGPL2.1 | libmicrohttpd:一个迷你库,可作为其他应用的一部分,让运行 HTTP 服务器变得简单。 或更高版本。 | ||
GNU LGPL2.1 | libsoup:一个 GNOME HTTP 客户端/服务器库,使用了 GObject。 。 | ||
GNU GPL2.1 | lwan:一个实验性,可扩展,高性能的 HTTP 服务器。 。 | ||
mongoose | :基于 C 的嵌入式 Web 服务器。 。 | ||
Expat | nanomsg:一个基于 C 的 ZeroMQ 实现。 。 | ||
Apache2.0 | onion:易于使用的 HTTP 服务器库。 。 | ||
Dual Licensed under the OpenSSL License and the SSLeay License | OpenSSL:一个 SSL 和 TLS 协议的实现,还包括一个加密库。 。 | ||
GNU LGPLv2.1 | oSip:一个基于 C 的 SIO 实现,没有额外的依赖。 或更高版本。 | ||
Apache2.0 | s2n:一个 C99 标准的 TLS/SSL 协议的实现,简单,快并且以安全优先。 。 | ||
ISC | socket99:BSD 套接字 API 的 C99 封装。 。 | ||
GNU GPL3 | Tox:一个通信平台,被设计为 Skype 杀手。 。 | ||
Expat | twitc:一个与 Twitter OAuth API 交互的迷你 C 库。 。 | ||
C 语言资源大全中文版 / 网络编程 / Web框架 | |||
GNU LGPLv2.1 | balde:一个基于 GLib 的 C 微框架。 。 | ||
C 语言资源大全中文版 / 数值计算 | |||
GNU GPL2.1 | apophenia:一个用于统计和科学计算的库。 。 | ||
3-clause BSD | ATLAS:自动调谐线性代数软件。 。 | ||
BLAS license | BLAS:Basic Linear Algebra Subprograms;提供向量和矩阵操作的一系列操作。 。 | ||
GNU LGPLv3 | Cuba:一个计算多维的数值积分的库。 。 | ||
GNU GPL2.1 | FFTW:The Fastest Fourier Transform in the West;一个高度优化的快速傅立叶变换例程。 或更高版本。 | ||
GNU GPL2.1 | FLINT:Fast Library for Number Theory;一个支持算数,多项式,幂级数和矩阵等。 或更高版本。 | ||
GNU GPL3 | GLPK:GNU Linear Programming Kit;一个求解大规模线性规划,混合整数规划和其他相关问题。 或更高版本。 | ||
GNU GPL2.1 | GMP:GNU Multple Precision Arithmetic Library;一个支持任意精度计算的库。双重许可 和 。 | ||
GNU LGPL3 | GNU MPC:一个支持复杂数字计算的库。 或更高版本。 | ||
GNU LGPL3 | GNU MPFR:一个支持任意精度的浮点数计算库。 或更高版本(大多数最近版本), 或更高版本(2.4.x 之前)。 | ||
GNU GPL3 | GNU MPRIA:一个支持多精度合理区间运算的可扩展数学库。 或更高版本。 | ||
GNU GPL3 | GSL:The GNU Scientific Library;一个精确的数值计算库。 。 | ||
3-clause BSD | KISS FFT:一个非常快的傅里叶变换库。 。 | ||
LAPACK | LAPACKE:一个 的 C 接口。 。 | ||
GNU GPL2.1 | PARI/GP:一个数论的计算机代数系统,包括 C 编译器。 或更高版本。 | ||
FreeBSD | PETSc:一系列数据结构和例程,用于计算由偏微分方程建模的应用程序的可扩展并行解。 。 | ||
LGPL3 | SLEPc:一个在并行计算机中的解决大型,稀疏特征值问题的软件库。 | ||
3-clause BSD | Yeppp!:非常快,SIMD 优化的数学库。 。 | ||
C 语言资源大全中文版 / 并行编程 | |||
官网 | cchan:一个线程间通信通道构建的小型库。公共领域。 | ||
FreeBSD | ck:并发原语,安全内存回收机制和非阻塞数据结构。 。 | ||
X11 | mill:用 C 写成的 Go 风格并发。 | ||
MPICH licence | MPICH:MPI 的另一种实现。 。 | ||
官网 | OpenMP:一组 C 编译指令,使其易于并行化代码。标准(许可不适用)。 | ||
3-clause BSD | OpenMPI:一个消息传输接口实现。 。 | ||
FreeBSD | PETSc:一系列数据结构和例程,用于计算由偏微分方程建模的应用程序的可扩展并行解。 。 | ||
GNU GPL3 | pth:一个非抢占式优先级调度多线程执行的可扩展实现。 或者更高版本。 | ||
官网 | pthreads:POSIX 线程库。标准(没有适用的许可)。 | ||
GNU LGPL3 | SLEPc:一个在并行计算机中的解决大型,稀疏特征值问题的软件库。 。 | ||
zlib | TinyCThread:一个可扩展,小型的 C11 标准线程 API 实现。 。 | ||
C 语言资源大全中文版 / 正则表达式 | |||
3-clause BSD | PCRE:与 Perl 5 正则表达式完全相同的实现。 。 | ||
GNU GPL2.1 | SLRE:Super Light Regular Expression library;一个 Perl 正则表达式语法子集的迷你实现。 。 | ||
FreeBSD | TRE:一个与 POSIX 一致,充满特色的正则表达式库。 。 | ||
正则表达式 30 分钟入门教程 | PS:关于正则表达式,deerchao 有篇文章不错 《 》 | ||
C 语言资源大全中文版 / 序列化 | |||
Expat | c-capnproto:一个 Cap'n Proto 序列化协议的实现。 。 | ||
MessagePack | cmp:一个 序列化协议的实现。 。 | ||
Apache2.0 | libavro:一个 Avro 数据序列化系统的 C 实现。 。 | ||
MessagePack | mpack:另一个 序列化协议的实现。 。 | ||
FreeBSD | protobuf-c:一个 Google Protocol Buffer 的 C 实现。 。 | ||
官网 | xdr:External Data Representation;数据序列化标准。标准(没有可用许可)。 | ||
C 语言资源大全中文版 / 源码集锦 | |||
这里 | CCAN:模仿 Perl 的 CPAN,这是一个大的实用 C 代码集合。完整的列表在 。多种许可(所有都是免费软件)。 | ||
Expat | clib:一个 C 软件包管理器,配备了一堆自己的库。 。 | ||
官网 | gnulib:通用 GNU 代码的集合。多种许可证,全部免费。 | ||
官网 | libdjb:做各种事情的库的集合。(显然)公共领域。 | ||
C 语言资源大全中文版 / 标准库 | |||
3-clause BSD | Bionic:谷歌为 Android 开发的 C 标准库。 。 | ||
GNU GPL2.1 | dietlibc:标准 C 库,可能是最小的二进制文件。 。 | ||
GNU LGPL2.1 | glibc:GNU C 库。一个 C 标准库的实现。 。 | ||
Expat | musl:标准 C 库,兼容 POSIX 2008 和 C11,为静态链接设计。 。 | ||
C 语言资源大全中文版 / 字符串处理 | |||
3-clause BSD | bstrlib:更好的字符串处理库。双重许可, 或 。 | ||
ICU license | ICU:International Components for Unicode;提供 Unicode 支持的库。 。 | ||
GNU LGPL3 | libunistring:处理 Unicode 字符串的 C 库。 。 | ||
GNU LGPL2.1 | libgiconv:文本转换库。 (库), (编码转换程序)。 | ||
clib | 4,876 | 3 months ago | SDS:Simple Dynamic Strings;一个用简单方式处理 C 字符串的库,而且兼容标准 C 字符串函数。可通过 使用。 。 |
Expat | shoco:一个小型文本压缩器。 。 | ||
3-clause BSD | smaz:一个高效的字符串压缩库。 | ||
C 语言资源大全中文版 / 测试工具 | |||
FreeBSD | CHEAT:一个非常简单的单元测试框架。 。 | ||
GNU LGPL2.1 | Check:一个 C 的单元测试框架。 。 | ||
官网 | 684 | about 1 month ago | CMock:一个 C 的 mock/stub 生成器。 |
Apache2.0 | cmocka:一个支持 mock 对象的单元测试框架。 。 | ||
Expat | Criterion:一个 KISS 风格,非侵入式的 C 测试框架。 | ||
GNU LGPL2.0 | CUnit:另一个 C 的单元测试框架。 。 | ||
Expat | minunit:极小的 C 单元测试框架。 。 | ||
Expat | Unity:一个简单的 C 单元测试框架。 。 | ||
C 语言资源大全中文版 / 文本编辑器扩展 / Emacs | |||
GNU GPL3 | CEDET:Collection of Emacs Development Environment Tools;给 Emacs 提供一种类似 IDE 的特点,是内建的。 或更高版本。 | ||
GNU GPL3 | Flycheck:现代语法检查。对于 C,它可以使用 GCC 或者 Clang 作为后端。 或更高版本。 | ||
GNU GPL3 | Yasnippet:一个模板系统,支持 C 的通用代码片段。 或更高版本。 | ||
C 语言资源大全中文版 / 文本编辑器扩展 / Vim | |||
Do What The Fuck You Want To license | 11,301 | over 2 years ago | Syntastic:语法检查和语言分析。 。 |
YouCompleteMe | :一个 Vim 的代码补全引擎。 。 | ||
C 语言资源大全中文版 / 工具 | |||
GNU GPL3 | adlint:一个静态分析器。支持完全的 C89 标准和部分 C99 标准。 或更高版本。 | ||
GNU LGPL3 | Artistic Style:一个支持 C 的小而快的自动化代码格式化工具。 。 | ||
Apache2.0 | address-sanitizer:一个很快的内存错误探测器。 。 | ||
biicode | :一个现代的 C 依赖管理器。 。 | ||
Expat | c:在命令行中编译和执行 C 脚本,也支持 shebang。 。 | ||
FreeBSD | c99sh:用 hash-bang 运行 C 文件。 。 | ||
Original BSD | CBMC:C Bounded Model Checker;一个检查数组边界,指针安全和用户自定义断言的工具。 。 | ||
官网 | 28,577 | 9 days ago | cdecl:一个在线服务,能够把 C 的声明翻译成英文,反向也可以。公共领域。 |
官网 | cinclude2dot:在 C 项目中使用 Graphviz 的图像包含依赖。任官网 GNU GPL 版本(根据文件中的要求) | ||
Complexity | :一个测量 C 代码复杂性的工具。 或更高版本。 | ||
GNU GPL3 | DDD:各种命令行调试器的图形前端。 或更高版本。 | ||
GNU GPL3 | fab:让每次构建都最优的构建系统。 。 | ||
GNU GPL3 | GDB:The GNU Project debugger;一个 C 调试器。 或更高版本。 | ||
GNU GPL2.1 | Glade:一个让 TK+ GUIs 开发更快的 RAD 工具。 。 | ||
3-clause BSD | GMSL:GNU Make Standard Library;一个 GNU Make 额外功能的集合。 。 | ||
GNU GPL3 | GNU Global:一个 C 的源码标签工具。 。 | ||
GNU GPL3 | gprof:一个性能分析工具。GNU binutils 的一部分。 或更高版本。 | ||
GNU GPL3 | Highlight:把源码转化为高亮的格式化文本。 。 | ||
NCSA | include-what-you-use:帮助程序员发现不必要的包含和提供解决他们的建议。基于 LLVM/Clang(只能与它一起工作)。 。 | ||
GNU GPL3 | indent:自动格式化 C 代码,让它更容易阅读。也能把一种风格的代码转化为另一种。 或更高版本。 | ||
GNU GPL3 | Make:一个控制程序的可执行和其他非代码文件的生成的工具。 或更高版本(链接到 GNU 的实现)。 | ||
Expat | qo:无需分开的配置文件的构建系统。 。 | ||
FreeBSD | rr:记录非确定执行来允许可确定调试的调试器。 。 | ||
GNU GPL2.1 | tup:一个很快,基于文件,跨平台的构建系统。 。 | ||
3-clause BSD | unifdef:移除 #ifdef 和 #if 指令包含的文本,不会改变文件的其他部分。 和 。 | ||
GNU GPL2.1 | Valgrind:各种动态分析工具,包括一个内存泄漏检测工具。 。 | ||
C 语言资源大全中文版 / 其他工具 | |||
Expat | ApeTagLibs:APEv2 标签的 C 库。 。 | ||
GNU GPL3 | bfd:处理二进制对象文件的库。GNU binutils 的一部分。 或更高版本。 | ||
ccv | :基于C语言、带缓存机制的现代计算机视觉核心库。 。 | ||
cf4ocl | :The C Framework for OpenCL;一个跨平台面向对象框架,用于开发和用基准问题测试 项目。 (库), (其他代码)。 | ||
Variety of licenses, all free | 4,888 | 2 months ago | CommonMark:CommonMark 规范的 C 实现。 。 |
Expat | CException:异常的 C 实现。 。 | ||
Expat | docopt.c:命令行选项解析器的 C 实现。 。 | ||
Expat | dyncall:另一个外部函数接口库。 。 | ||
GNU GPL2.1 | FANN:Fast Artifical Neural Network library;一个神经网络的实现。 。 | ||
GNU LGPLv2.1 | Firm:一个 C 库,提供了基于图像中间表示,优化和适合编译器的汇编代码生成。配备了 C 的前端例子,使用相同的许可。 。 | ||
GNU GPL2.1 | gjrand:随机数字生成的例程库。 或者 (用户的选择)。 | ||
GNU GPL3 | GNU FreeIPMI:一个带内和带外的 IPMI 实现。 。 | ||
GNU GPL3 | GNU gperf:一个完美的哈希函数生成器,提供一系列的字符串。输出 C 代码。 或更高版本。 | ||
GNU GPL3 | GNU Libffcall:一个构建外部函数接口库的集合。 或更高版本。 | ||
3-clause BSD | gperftools:一系列测量和提高性能的实用工具集合。 。 | ||
GPL2.1 | hammer:二进制格式的解析器组合。 | ||
官网 | Hans Boehm GC:C 的垃圾收集器?如果我用了不要介意。多种许可证,完全免费。 | ||
官网 | 98 | over 11 years ago | huffandpuff:一个极小的哈夫曼编码器和解码器。公共领域。 |
Expat | iniparser:一个 .ini 文件的解析器。 。 | ||
FreeBSD | jemalloc:一个 malloc 实现,着重于段错误的避免和可扩展并发支持。 。 | ||
Apache2.0 | jwHash:一个很快的哈希表实现。 。 | ||
3-clause BSD | kdtree:KD-trees 的简单库。 。 | ||
GNU LGPL3 | Kitsune:高效,通用的框架,用于软件的动态升级。 或更高版本。 | ||
GNU GPL3 | libavl:一个包括各种自平衡二叉树的库。 或更高版本。 | ||
Apache2.0 | libbson:BSON 实用库。 。 | ||
官网 | libCello:引入高级语言给 C 的库。 | ||
FreeBSD | libcox:一个运行跨平台系统调用和跨系统标准工具的库。 。 | ||
Expat | libffi:轻量级的外部函数接口库。 。 | ||
GNU GPL2 only, with a linking exception | 9,704 | 7 days ago | libgit2:Git 的纯 C 实现。 。 |
GNU LGPLv2.1 | libimobiledevice:一个跨平台协议库,用于与 iThings 通信。 或更高版本(库), 或更高版本(工具)。 | ||
GNU GPL2.1 | libmpv:音乐播放库。编译的时候加入 来避免生成音乐播放器。 或更高版本。 | ||
GNU LGPL3 | libnfc:一个平台独立的 NFC 库。 。 | ||
libPhenom | :事件框架,用于构建高扩展和高性能系统。 。 、 | ||
Expat | libsoundio:跨平台,实时音频输入输出的库,有很多种后端。 。 | ||
FreeBSD | libucl:通用配置库解析器。 。 | ||
GNU GPL3 | libudp:一个统一设计模式的 C 实现。 或更高版本。 | ||
Expat | libuv:跨平台异步 I/O。 。 | ||
Expat | libYAML:一个 YAML 1.1 解析器和发射器。 。 | ||
GNU GPL2.1 | lzo:一个很快的数据压缩库。 。 | ||
FreeBSD | mpc:解析器组合库。 。 | ||
GNU GPL3 | ncurses:彩色的终端 UI 库。 或更高版本。 | ||
官网 | 693 | almost 7 years ago | nope.c:一个基于 C 语言,超级轻量级的软件平台,用于可扩展服务端和网络应用的开发(想想 C 程序员的 nodejs)。 |
Expat | pbc:一个协议缓冲库。 。 | ||
RabbitMQ | rabbitmq-c: 的客户端库。 。 | ||
GNU GPL2.1 | Ragel:为编译C的状态机的DSL。 。 | ||
1-clause BSD | uthash:哈希表实现,允许已经存在的数据结构很容易地存在哈希表里面。 。 | ||
Expat | Viola:libCello 的简化版本。 。 | ||
3-clause BSD | zlib:一个相当漂亮却精致不张扬的压缩库。 。 | ||
Sundown | :一个用C编写的符合标准的、快速的、安全的源码解析器。 | ||
C 语言资源大全中文版 / XML | |||
Expat | :面向流的 XML 解析器。 。 | ||
Expat | libxml2:一个符合标准,轻量级的 XML 解析器。 。 | ||
mini-xml | :小型 XML 读写库。没有 C 标准库的依赖。 。 |