清单狂魔,只挖坑不填坑。。

前言

最近经常被询问 C 语言 相关的问题,突然便也觉得需要思考一下 C 语言的进阶了。
我用 C 语言写过的最大的一个项目,也只是那个贪吃蛇,后来就断断续续地用 Python、Java、Matlab 去了。以至于看 JVM/CPython 的源代码时看到一堆的宏,只会不知所措。

所以也就整理个清单,打算找时间补补了。。

基础

  1. 语法:C Primer Plus
  2. 调试:gdb、汇编
  3. 编译:cmake
  4. library or executable?

开源库

日志

  1. zlog:日志

测试

  1. Criterion:21世纪的 C语言 跨平台测试框架

字符串处理

  1. ICU:一个 unicode 字符串处理库.
  2. PCRE:一个正则处理库

数据结构与算法

C 标准库既没有 C++ 的 STL,也没 Java 的 Collections。每次都要自己造轮子也太辛苦了点。。所以有的话当然要用别人的轮子了。

  1. Collections-C:提供了常用数据结构的实现,API 超简洁,注释很详细。源码抽空要仔细读一遍。

数据保存

  1. SQLite:这个在 Python 小项目里也常用,以文件为载体的嵌入式数据库。
  2. cJSON:json 编解码

图形库

总免不了想搞个图形界面。。

  1. cairo:2D 图形库
  2. LCUI:一个使用 xml+css 写 UI 的 C UI库,适合写简单的跨平台应用。
  3. Learning OpenGL:这俩你都不想用?那直接 OpenGL 搞起吧。

更多

awesome-c

最新文章

  1. OPRNGL之渲染过程大概梳理
  2. adb 查看日志信息
  3. 获取table的行数
  4. xdg-open 打开“irc:*”链接
  5. svn 项目转移
  6. SDPLR的安装过程(matlab)
  7. 为什么每个浏览器都有Mozilla
  8. Vim记录
  9. Node.js 入门教程和学习资源汇总
  10. 推荐2一个在Java编码过程中得心应手的工具
  11. 编程语言与C语言的简介
  12. Java初学者必知 关于Java字符串问题
  13. hdu 5937 -- Equation(搜索)
  14. Chromium与CEF的多进程模型及相关參数
  15. 【转】国外几款GPS卫星历预报软件
  16. Tomcat的Https设置及Http自动跳转Https
  17. 关于Kafka区分请求处理优先级的讨论
  18. cocos2d-x 学习资源
  19. CSS--外发光与内阴影
  20. dedecms迁站

热门文章

  1. CPP-STL:用vector保存对象时保存指针的优点, 以及reserve的使用(转)
  2. hbase的coprocessor使用(转)
  3. cudaMallocPitch()
  4. jeDate日期控件
  5. django Ajax介绍
  6. (排班表二)后台动态绘制Grid表格
  7. Navicat Premium Mac 12 破解
  8. dts--tests(一)
  9. 《Python语言及其应用》学习笔记
  10. 【异常】The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone.