← Languages

C

Full course · 21 lessons

C is the foundational systems programming language that powers operating systems, embedded devices, databases, and virtually every major software infrastructure. These are the definitive free resources — vetted, current, and complete.

Knowledge Course
01

Getting Started with C

Set up a C toolchain with gcc, understand compile/run, main function, and standard streams.

45 min→
02

Variables and Data Types

Integral and floating types, fixed-width types, sizeof, and enumeration.

60 min→
03

Operators and Expressions

Arithmetic, comparison, logical, bitwise operators, and precedence.

60 min→
04

Control Flow

if/else, switch, for, while, do-while loops, and jump statements.

60 min→
05

Functions and Prototypes

Function declarations, pass-by-value, pass-by-pointer, and recursion.

60 min→
06

Arrays and Strings

One and multi-dimensional arrays, null-terminated strings, string.h.

60 min→
07

Pointers

Address-of, dereference, pointer arithmetic, pointer-to-pointer, void*.

75 min→
08

Structs and Unions

Struct declaration, member access, arrow operator, copies, unions.

60 min→
09

Dynamic Memory

malloc, calloc, realloc, free, memory leaks, and heap patterns.

75 min→
10

Preprocessor and Macros

#define, function-like macros, include guards, conditional compilation.

60 min→
11

File I/O

fopen, fprintf/fscanf, fgets, binary I/O, fseek, and error handling.

60 min→
12

Standard Library

string.h, stdlib.h, math.h, and ctype.h essentials.

60 min→
13

Bit Manipulation

Bitwise operators, bit flags, bit tricks, and bitfields.

60 min→
14

Function Pointers and Callbacks

Function pointer syntax, callbacks, qsort comparators, dispatch tables.

75 min→
15

Linked Lists and Data Structures

Struct nodes, linked lists, traversal, free, and reusable patterns.

75 min→
16

Recursion

Recursive functions, factorial, fibonacci, divide-and-conquer.

45 min→
17

Error Handling

errno, perror, strerror, return codes, and setjmp/longjmp.

60 min→
18

Multi-file Projects and Headers

Header files, include guards, separate compilation, static linkage.

60 min→
19

Make and Build Tooling

Makefiles, targets, automatic variables, compiler flags, sanitizers.

60 min→
20

Undefined Behavior and Debugging

OOB access, signed overflow, use-after-free, volatile, restrict, sanitizers.

75 min→
21

Advanced: Variadics, Threads, and Atomics

Variadic functions, inline, C11 threads, atomics, low-level control.

75 min→
Curated Resources
Systems & Tracks