一些有意思的C语言开源库

搜集了一些个人比较感兴趣的开源C项目,这些项目索引来自于 hellogithub。

chsrc

https://github.com/RubyMetric/chsrc

一个全平台的换源工具,比起每次针对不同工具寻找国内镜像源手动替换来说,这个工具方便多了。让我比较欣赏的一点在于,作者并没有使用脚本等解释语言来实现这个功能,而是使用C来进行实现,避免了一个简单功能引入过多依赖的问题。在项目REAMED也提及这一点,原话如下:我们使用 C99 来完成上述目标。我们并不使用 Python 或 JS 等解释语言,因为一个简单的换源工具,不应该强行塞给用户一个庞大的解释器和数十、数百 MB 其他文件。

kilo

https://github.com/antirez/kilo

一个C实现的简单的文本编辑器,我觉得学习价值多余好玩之处。1000行的文本编辑器,要啥自行车。

linked-list-good-taste

https://github.com/mkirchner/linked-list-good-taste

Linus Torvalds’ linked list argument for good taste, explained

sds

https://github.com/antirez/sds

一个C的动态字符串实现

EasyLogger

https://github.com/armink/EasyLogger

一个轻量级,高性能的日志库

gb-studio

https://github.com/chrismaltby/gb-studio

一个做 Game Boy 游戏的编辑器

uthash

https://github.com/troydhanson/uthash

一个 hash tables 的C实现

quadsort

https://github.com/scandum/quadsort

快排

toybox

https://github.com/landley/toybox

linux command 工具箱

mgba

https://github.com/mgba-emu/mgba

BGA 模拟器

si78c

https://github.com/loadzero/si78c

SPace Invaders 街机游戏模拟器

TIC-80

https://github.com/nesbox/TIC-80

一个游戏机模拟平台

ucore

https://github.com/kiukotsu/ucore

清华大学操作系统课程实验 (OS Kernel Labs)

libevent

https://github.com/libevent/libevent

这个不用说了吧

SimpleKernel

https://github.com/Simple-XX/SimpleKernel

用于学习操作系统的简单内核

DungeonRush

https://github.com/rapiz1/DungeonRush

基于SDL实现的龙与地下城游戏

json-tutorial

https://github.com/miloyip/json-tutorial

好多年前的教程了,很经典。从零开始的 JSON 库教程

C

https://github.com/TheAlgorithms/C

各种算法合集

awesome-c-cn

https://github.com/jobbole/awesome-c-cn

C 语言资源大全中文版

tbox

https://github.com/tboox/tbox

C语言实现的跨平台开发库