170 cards
This deck focuses on some of the most important intermediate concepts in C programming, with a strong emphasis on pointers and dynamic memory management. You'll work through questions about dereferencing pointers, the difference between malloc() and calloc(), and why free() is essential to prevent memory leaks. It also covers user-defined types like structs, unions, and enums, and finishes with the basics of file handling — opening, reading from, and writing to files.
It's a great fit if you already understand C syntax and basic data types but want to firm up the topics that often trip people up, especially around manual memory control. These concepts come up frequently in coursework, technical interviews, and real-world systems programming, so getting comfortable with them pays off across many areas.
Because the cards are deeply interconnected — for example, understanding pointers makes malloc() and dangling pointers much easier to grasp — try to study them in short, spaced-out sessions rather than cramming. After each review, take a moment to think about how one concept leads to the next, and try writing a tiny C program that uses what you just reviewed. Combining recall practice with hands-on coding tends to make these tricky ideas stick much faster than reading alone.