Atomic operations library
From cppreference.com
< c
If the macro constant __STDC_NO_ATOMICS__
(C11) is defined by the compiler, the header <stdatomic.h>
, the keyword _Atomic, and all of the names listed here are not provided.
Contents
[edit] Types
Defined in header
<stdatomic.h>
[edit] Macros
Defined in header
<stdatomic.h>
[edit] Functions
Defined in header
<stdatomic.h>
swaps a value with an atomic object if the old value is what is expected, otherwise reads the old value
(function) [edit]
(function) [edit]
[edit] Types
The standard library offers convenience typedefs for the core language atomic types.
Typedef name
Full type name
atomic_bool
_Atomic _Bool
atomic_char
_Atomic char
atomic_schar
_Atomic signed char
atomic_uchar
_Atomic unsigned char
atomic_short
_Atomic short
atomic_ushort
_Atomic unsigned short
atomic_int
_Atomic int
atomic_uint
_Atomic unsigned int
atomic_long
_Atomic long
atomic_ulong
_Atomic unsigned long
atomic_llong
_Atomic long long
atomic_ullong
_Atomic unsigned long long
atomic_char8_t
(C23)
_Atomic char8_t
atomic_char16_t
_Atomic char16_t
atomic_char32_t
_Atomic char32_t
atomic_wchar_t
_Atomic wchar_t
atomic_int_least8_t
_Atomic int_least8_t
atomic_uint_least8_t
_Atomic uint_least8_t
atomic_int_least16_t
_Atomic int_least16_t
atomic_uint_least16_t
_Atomic uint_least16_t
atomic_int_least32_t
_Atomic int_least32_t
atomic_uint_least32_t
_Atomic uint_least32_t
atomic_int_least64_t
_Atomic int_least64_t
atomic_uint_least64_t
_Atomic uint_least64_t
atomic_int_fast8_t
_Atomic int_fast8_t
atomic_uint_fast8_t
_Atomic uint_fast8_t
atomic_int_fast16_t
_Atomic int_fast16_t
atomic_uint_fast16_t
_Atomic uint_fast16_t
atomic_int_fast32_t
_Atomic int_fast32_t
atomic_uint_fast32_t
_Atomic uint_fast32_t
atomic_int_fast64_t
_Atomic int_fast64_t
atomic_uint_fast64_t
_Atomic uint_fast64_t
atomic_intptr_t
_Atomic intptr_t
atomic_uintptr_t
_Atomic uintptr_t
atomic_size_t
_Atomic size_t
atomic_ptrdiff_t
_Atomic ptrdiff_t
atomic_intmax_t
_Atomic intmax_t
atomic_uintmax_t
_Atomic uintmax_t
[edit] References
- C23 standard (ISO/IEC 9899:2024):
- 7.17 Atomics <stdatomic.h> (p: TBD)
- 7.31.8 Atomics <stdatomic.h> (p: TBD)
- C17 standard (ISO/IEC 9899:2018):
- 7.17 Atomics <stdatomic.h> (p: TBD)
- 7.31.8 Atomics <stdatomic.h> (p: TBD)
- C11 standard (ISO/IEC 9899:2011):
- 7.17 Atomics <stdatomic.h> (p: 273-286)
- 7.31.8 Atomics <stdatomic.h> (p: 455-456)
[edit] See also
C++ documentation for Atomic operations library