Graph
You split a problem into functions and reach values through pointers.
Declaration, definition, and the contract a function honours.
Base case, recursive case, and the call stack underneath.
Address, dereference, output parameter, and the half-open range.
One and two dimensional arrays, row-major order, and array decay.