An open-source, structured, visual, and beginner-friendly path to mastering the C programming language. Start from zero and build real-world, system-level C programs.
This project is a comprehensive learning path for anyone wanting to master C Programming from scratch β inspired by the classics like K&R, modern practices, and real-world projects.
Whether youβre a student, hobbyist, or aspiring systems programmer β this roadmap is for you.
C-Roadmap/ β βββ README.md βββ LICENSE βββ CONTRIBUTING.md β βββ stage-0/ β βββ README.md βββ stage-1/ β βββ README.md βββ stage-2/ β βββ README.md βββ stage-3/ β βββ README.md βββ stage-4/ β βββ README.md βββ stage-5/ β βββ README.md βββ stage-6/ β βββ README.md βββ stage-7/ β βββ README.md β βββ assets/ β βββ memory-layout.png β βββ visuals/ βββ stage1-flowchart.png
GCC
/ MinGW
/ TDM-GCC
VS Code
, Code::Blocks
, or Dev-C++
This roadmap is divided into 7 major stages, each with bite-sized folders, notes, code snippets, and projects.
Click into any stage folder to start learning.
You can also open the repo in GitHub Codespaces or clone it locally to follow along.
Want to improve the roadmap, fix a typo, or add resources?
We welcome contributions! π
Please read CONTRIBUTING.md before submitting pull requests.
This project is licensed under the MIT License.
Feel free to fork, remix, and share it with the world.
If you found this helpful, consider starring β this repo or sharing it with friends who want to learn C!