Files
cppdraft_translate/cppdraft/cstddef/syn.md
2025-10-25 03:02:53 +03:00

2.6 KiB

[cstddef.syn]

17 Language support library [support]

17.2 Common definitions [support.types]

17.2.1 Header synopsis [cstddef.syn]

// all freestandingnamespace std {using ptrdiff_t = see below; using size_t = see below; using max_align_t = see below; using nullptr_t = decltype(nullptr); enum class byte : unsigned char {}; // [support.types.byteops], byte type operationstemplateconstexpr byte& operator<<=(byte& b, IntType shift) noexcept; templateconstexpr byte operator<<(byte b, IntType shift) noexcept; templateconstexpr byte& operator>>=(byte& b, IntType shift) noexcept; templateconstexpr 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; templateconstexpr IntType to_integer(byte b) noexcept;}#define NULL see below#define offsetof(P, D) see below

1

#

The contents and meaning of the header are the same as the C standard library header <stddef.h>, except that it does not declare the type wchar_t, that it does not define the macro unreachable, that it also declares the type byte and its associated operations ([support.types.byteops]), and as noted in[support.types.nullptr] and[support.types.layout].

See also: ISO/IEC 9899:2024, 7.22