Frontend Labs
⋯

D. Glossary

  • Translation unit — one .c file plus everything its #includes pull in, after preprocessing; the compiler's actual unit of work.
  • ABI (Application Binary Interface) — the compiled-code-level contract (calling convention, struct layout, symbol names) that lets separately compiled pieces link and call each other correctly.
  • UB (Undefined Behavior) — behavior the standard places zero requirements on; the compiler may assume it never occurs.
  • Amortized O(1) — an operation that's occasionally expensive but averages out to constant time over many calls (Section 16.1's doubling dynamic array).
  • Intrusive container — a container whose bookkeeping fields are embedded inside the payload struct itself, recovered via container_of, instead of the payload being stored inside generic container nodes (Section 19).
  • Opaque pointer/handle — a pointer to a struct whose definition is hidden from the caller, used to build stable, ABI-safe public APIs (Section 40.1).
  • False sharing — a performance bug where independent data on the same CPU cache line causes unnecessary cross-core cache invalidation (Section 42.3).

Generated from real-life-c-guide.md · 8 Oct 2026 16:36