E. Further reading and real codebases worth reading
The C Programming Language (K&R, 2nd ed.) — dated in places (pre-C99)
but still the sharpest, shortest tour of the language's core ideas.
Modern C (Jens Gustedt, free online) — written around C11/C17,
the best bridge from "K&R C" to the standard this guide targets.
SQLite source (sqlite.org) — Section 33; read os_unix.c for the VFS
layer, vdbe.c for the opcode interpreter.
Redis source (github.com/redis/redis) — Section 34; start with
src/sds.c and src/ae.c, both short and self-contained.
curl source (github.com/curl/curl) — Section 35; lib/easy.c and
lib/multi.c.
cJSON source (github.com/DaveGamble/cJSON) — Section 36; small enough
to read start to finish in one sitting after this guide's Part II.
The Linux kernel's include/linux/list.h — Section 19's
container_of, in its original, real-world form.
man 7 signal, man 2 mmap, man 3 pthread_create — the primary
sources this guide's socket/threading/memory sections summarize;
the man pages are the actual specification of the syscalls you're
calling.
wiki/DSA/real-life-ds-algo-guide.md
— this guide's data-structures-and-algorithms companion. It covers
every classic DS/algo topic (arrays through Dijkstra and topological
sort) ELI5-first, with a Go implementation and a C implementation
side by side for each one — the C versions are the beginner on-ramp to
Sections 17–23's from-scratch data structures and Section 22's
Dijkstra/graph material above, in the same toy-box-analogy style as
this guide's "Real-world example" boxes.