Standard library header <cstddef> - cppreference.com

From cppreference.com

This header was originally in the C standard library as <stddef.h>.

This header is part of the utility library.

Macros

implementation-defined null pointer constant
(macro constant) [edit]
byte offset from the beginning of a standard-layout type to specified member
(function macro) [edit]

Types

unsigned integer type returned by the sizeof operator
(typedef) [edit]
signed integer type returned when subtracting two pointers
(typedef) [edit]

(C++11)

the type of the null pointer literal nullptr
(typedef) [edit]
trivial type with alignment requirement as great as any other scalar type
(typedef) [edit]

(C++17)

the byte type
(enum) [edit]

Functions

convert std::byte to integer
(function template) [edit]

Synopsis

namespace std {
  using ptrdiff_t = /* see description */;
  using size_t = /* see description */;
  using max_align_t = /* see description */;
  using nullptr_t = decltype(nullptr);

  enum class byte : unsigned char {};

  // byte type operations
  template<class IntType>
    constexpr byte& operator<<=(byte& b, IntType shift) noexcept;
  template<class IntType>
    constexpr byte operator<<(byte b, IntType shift) noexcept;
  template<class IntType>
    constexpr byte& operator>>=(byte& b, IntType shift) noexcept;
  template<class IntType>
    constexpr byte operator>>(byte b, IntType shift) noexcept;
  constexpr byte& operator|=(byte& l, byte r) noexcept;
  constexpr byte operator|(byte l, byte r) noexcept;
  constexpr byte& operator&=(byte& l, byte r) noexcept;
  constexpr byte operator&(byte l, byte r) noexcept;
  constexpr byte& operator^=(byte& l, byte r) noexcept;
  constexpr byte operator^(byte l, byte r) noexcept;
  constexpr byte operator~(byte b) noexcept;
  template<class IntType>
    constexpr IntType to_integer(byte b) noexcept;
}

#define NULL /* see description */
#define offsetof(P, D) /* see description */

Notes