Namespaces
Variants
Actions

C and C++ reference

From cppreference.com

C++ reference
C++11, C++14, C++17, C++20, C++23, C++26  β”‚  Compiler support C++11, C++14, C++17, C++20, C++23, C++26

Language

Preprocessor βˆ’ Comments
ASCII chart
Basic concepts
    Keywords
    Names (lookup)
    Types (fundamental types)
    The main function
    Modules (C++20)
    Contracts (C++26)
Expressions
    Value categories
    Evaluation order
    Operators (precedence)
    Conversions βˆ’ Literals
    Constant expressions
Statements
    if βˆ’ switch
    for βˆ’ range-for (C++11)
    while βˆ’ do-while
Declarations βˆ’ Initialization
Functions βˆ’ Overloading
Coroutines (C++20)
Classes (unions)
Templates βˆ’ Exceptions
Freestanding implementations

Standard library (headers)

Named requirements

Language support library

Concepts library (C++20)

Diagnostics library

Memory management library

Metaprogramming library (C++11)

General utilities library

Function objects βˆ’ hash (C++11)
Swap βˆ’ Type operations (C++11)
Integer comparison (C++20)
pair βˆ’ tuple (C++11)
optional (C++17)
expected (C++23)
variant (C++17) βˆ’ any (C++17)
bitset βˆ’ Bit manipulation (C++20)

Containers library

vector βˆ’ deque βˆ’ array (C++11)
list βˆ’ forward_list (C++11)
inplace_vector (C++26)
hive (C++26)
map βˆ’ multimap βˆ’ set βˆ’ multiset
unordered_map (C++11)
unordered_multimap (C++11)
unordered_set (C++11)
unordered_multiset (C++11)
Container adaptors
span (C++20) βˆ’ mdspan (C++23)

Iterators library

Ranges library (C++20)

Algorithms library

Strings library

Text processing library

Numerics library

Date and time library

Calendar (C++20) βˆ’ Time zone (C++20)

Input/output library

Concurrency support library (C++11)

thread βˆ’ jthread (C++20)
atomic βˆ’ atomic_flag
atomic_ref (C++20) βˆ’ memory_order
Mutual exclusion βˆ’ Condition variables
Futures βˆ’ Semaphores (C++20)
latch (C++20) βˆ’ barrier (C++20)
Safe Reclamation (C++26)

Execution support library (C++26)

Feature test macros (C++20)

Language βˆ’ Standard library βˆ’ Headers

Technical specifications

    Standard library extensions  (library fundamentals TS)

    Standard library extensions v2  (library fundamentals TS v2)

    propagate_const βˆ’ ostream_joiner βˆ’ randint
    observer_ptr βˆ’ Detection idiom

    Standard library extensions v3  (library fundamentals TS v3)

    scope_exit βˆ’ scope_fail βˆ’ scope_success βˆ’ unique_resource


Parallelism library extensions v2
(parallelism TS v2)

Concurrency library extensions
(concurrency TS)
Transactional Memory  (TM TS)
Reflection  (reflection TS)

External Links  βˆ’  Non-ANSI/ISO Libraries  βˆ’  Index  βˆ’  std Symbol Index

C reference
C89, C95, C99, C11, C17, C23  β”‚  Compiler support C99, C23

Language

Headers

Type support

Program utilities

Variadic functions

Diagnostics library

Dynamic memory management

Strings library

Null-terminated strings:
   byte  βˆ’   multibyte  βˆ’   wide

Date and time library

Localization library

Input/output library

Algorithms library

Numerics library

Concurrency support library (C11)

Technical specifications

   Dynamic memory extensions  (dynamic memory TR)
   Floating-point extensions, Part 1  (FP Ext 1 TS)
   Floating-point extensions, Part 4  (FP Ext 4 TS)

External Links  βˆ’  Non-ANSI/ISO Libraries  βˆ’  Index  βˆ’  Symbol Index
News
  • 27 August 2025: Sorry for the delay, everyone. Finding the time to work on the upgrade has proven more challenging than expected. Hopefully we'll be able to get back to normal in the near future.
  • 30 March 2025: The site will be in a temporary read-only mode in the next few weeks to facilitate some long-overdue software updates. Hopefully it won't take too long, but we all know how database migrations can sometimes turn evil. Please send any concerns/ideas/moral-support to comments@cppreference.com.