学习c
在线尝试C代码:T-Snippet | Godbolt | cplayground | GDB在线
工具:Frama-C |推断
在线资源:
标准
- C标准
- C工作组WG14文档
- C99
- C11
- C23(2022年最终草案)
- Posix.1-2017(OpenGroup.org)
C参考手册(Dennis M. Ritchie)-PDF
书籍(我使用)
- C编程:现代方法,第二版(2008) -KN King
- C Primer Plus ,第6版(2014年) -斯蒂芬·普拉塔(Stephen Prata)
教程
- Beej的C编程指南(2021年更新)
- C编程教程
- 斯坦福大学CS
- Essential C -Nick Parlante(PDF,2003年)
- 指针和记忆-Nick Parlante(PDF,2000年)
- 链接列表基础知识-N。Parlante(PDF,2001)
- 二进制树-N。Parlante(HTML)
- comp.lang.c
- 关于指针和阵列的教程(PDF,2003年)
- 如何正确使用Preslav Mihaylov的C中的宏
- 埃里克·侯赛斯(Eric Huss)的C图书馆参考指南(1997)
- 注释,示例 - C中的数据结构和算法实现
- 如何在C Ben Hoyt(2021)中实现哈希表
- 鲍勃·尼斯特罗姆(Bob Nystrom)
- 正则表达匹配者Brian Kernighan,Rob Pike的代码
- 简单的makefile教程
- 另一个makefile教程。
- 克里斯·韦隆(Chris Willons)的便携式makefiles教程(nullprogram.com,2017年)
- 右左规则解密C声明
- 制作文本编辑器 - 教程|代码
- SDL教程
- 丹·古金(Dan Gookin)
- 在C标准库中 - Begriffs(2019)
- POSIX线程编程
- Microsoft -C语言文档 - 学会使用C和C运行时库。 | PDF
编写安全的C代码
- SEI CERT C编码标准
- Felix Palmen-初学者指南远离scanf()
- 约翰·雷格(John Regehr) - C和C ++中未定义行为的指南
- 克里斯·拉特纳(Chris Lattner) - 每个C程序员都应该了解不确定的行为
- 17步骤到更安全C -Thomas Honold
- 编写更安全的C代码(github.com)
- C/C ++整数规则的摘要(Nayuki.io)
- 我希望在学习C时知道的一切(tmewett.com)
在线课程
- CPSC223-数据结构和编程技术-PDF/HTML(2021)
- CS241-系统编程 - Linux/UNIX(2021)
- CS631-主管,UNIX环境中的高级编程(2020-2021)
视频
- 研究C(基于CS50)
- C教程Ashley Mills(2015 -YouTube.com)GitHub上的源代码
- Windows Handmadehero上的C介绍
- 现代C以及我们可以从中学到的东西-Luca SAS(Accu 2021)
- GDB简介
- CS50教程
- 雅各布·索伯(Jacob Sorber)-GDB教程1
- 雅各布·索伯(Jacob Sorber)-GDB教程2
- 数据结构CS50(2017 -youtube.com)
- 链接列表
- CS50示例1(2017 -youtube.com)
- CS50示例2(2017 -youtube.com)
- 雅各布·索伯(Jacob Sorber)(2019 -youtube.com)
- 哈希表
- 示例1 -CS50(2018 -youtube.com)
- 示例2 -Jacob Sorber(2020 -YouTube.com)
- 嵌入式系统编程 - 如何在C中编程嵌入式微控制器(MCUS)(2013 -youtube.com)
- 在UNIX环境中进行的编程 - 视频(2020-2021 youtube.com)
- “从头开始制作游戏” - 瑞安·里斯(Ryan Ries),一个关于如何在Windows上编程的典型教程(开始于2020年 - YouTube.com)
- Lex Fridman的Brian Kernighan采访(C史,2020年7月,YouTube.com)
- YouTube.com上的Jacob Sorber频道
源代码
- OpenBSD libc
- musl-libc
- glibc
- gnu-coreutils
- 卷发/libcurl
- Rosettacode
- 在不同的OS(在GitHub上)/ GIST中实现的CAT
字符串库示例
- glib的字符串函数
- https://github.com/intel/safestringlib
- https://github.com/rurban/safeclib
- https://github.com/mpedrero/safestring
- https://github.com/antirez/sds
- https://github.com/maxim2266/str
- https://github.com/xyproto/egcc
- https://github.com/composer927/stringsstruct
- https://github.com/c-factory/strings
- https://github.com/cavaliercoder/c-stringbuilder
项目
练习,练习,练习...