Skip to main content
WebsiteintermediateFree

cppreference - C Reference

by cppreference contributors · cppreference.com

The community-maintained reference for the C language and standard library, annotated per standard version from C89 through C23, with exact signatures, semantics, defect-report notes and runnable examples for nearly every function.

Visit resource

More resources on C Programming

YouTubeFree

Jacob Sorber (YouTube)

A Clemson CS professor's channel of short code-along videos on pointers, dynamic allocation, debugging with gdb and valgrind, processes, threads, sockets and embedded work - the mechanical C skills textbooks tend to leave implicit.

WebsiteFree

What Every C Programmer Should Know About Undefined Behavior

Undefined behaviour is the single concept that separates competent C programmers from dangerous ones. Chris Lattner's three-part LLVM series explaining why signed overflow, null dereference and type-punning are undefined, how optimizers legitimately exploit that licence, and why the resulting miscompilations blindside otherwise experienced C programmers.

WebsiteFree

cppreference — C language and standard library reference

Community-maintained reference for the C language and its standard library, documenting every header and function with signatures, precise semantics and version markers showing which standard, C89 through C23, introduced or changed each feature. The everyday lookup for working C programmers.

WebsiteFree

Beej's Guide to C Programming

The free readable-in-a-browser path for someone who will not buy a book, and the fastest place to look up how a C idiom actually works. Distinct from cppreference (prose explanation, not lookup) and from CS50 (text, self-paced). Free online book taking the reader from a first program through pointers, structs, the standard library, variadic functions, multithreading and atomics, with a companion library-reference volume. Informal in tone but technically careful and kept current with recent standards.

Book

Computer Systems: A Programmer's Perspective (3rd edition)

Carnegie Mellon's systems textbook shows what C code becomes: machine representation of data, x86-64 assembly, the memory hierarchy, linking, exceptional control flow, virtual memory and concurrency. The companion site hosts free slides and the self-contained bomb, attack and malloc labs.

Book

The C Programming Language (2nd edition, K&R)

The language's primary source, by its creator and his colleague: 270 dense pages defining ANSI C, containing the original tutorial, the reference manual and a standard-library summary. Predates C99 onward, so it reads as canon rather than a first tutorial.

See all C Programming resources →