gpt4 book ai didi

c - 我们在 C 中有原子 uint32 类型吗?

转载 作者:行者123 更新时间:2023-12-04 11:08:26 27 4
gpt4 key购买 nike

sig_atomic_tint 的类型定义。但我很好奇我们是否有一个与 uint32_t 匹配的原子类型?

最佳答案

C11 在 <stdatomic.h> 中为原子类型定义了以下类型定义:

atomic_bool
atomic_char
atomic_schar
atomic_uchar
atomic_short
atomic_ushort
atomic_int
atomic_uint
atomic_long
atomic_ulong
atomic_llong
atomic_ullong
atomic_char16_t
atomic_char32_t
atomic_wchar_t
atomic_int_least8_t
atomic_uint_least8_t
atomic_int_least16_t
atomic_uint_least16_t
atomic_int_least32_t
atomic_uint_least32_t
atomic_int_least64_t
atomic_uint_least64_t
atomic_int_fast8_t
atomic_uint_fast8_t
atomic_int_fast16_t
atomic_uint_fast16_t
atomic_int_fast32_t
atomic_uint_fast32_t
atomic_int_fast64_t
atomic_uint_fast64_t
atomic_intptr_t
atomic_uintptr_t
atomic_size_t
atomic_ptrdiff_t
atomic_intmax_t
atomic_uintmax_t

没有atomic_uint32_t ,所以您的选择是:

  • 您可以使用 _Atomic(uint32_t)直接。
  • 您可以使用现有的替代类型之一( atomic_uint_least32_tatomic_uint_fast32_t 甚至 atomic_char32_t )如果这符合您的目的(可能不符合)。
  • 你可以假设 atomic_uint是 32 位的,并将其用作替代品。这实际上应该是最便携的方式之一,因为大多数操作系统(*BSD、Linux、Windows)都假设 int是 32 位类型。

关于c - 我们在 C 中有原子 uint32 类型吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49661987/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com