C++ 是否存在缺少固定宽度类型(intXX_t)的平台?

C++ 是否存在缺少固定宽度类型(intXX_t)的平台?,c++,c++11,C++,C++11,C++11具有固定宽度,2的补码类型:(u)int8\u t,(u)int16\u t,等等 但是,这些类型是可选的 有时我需要使用这些类型,因此我的代码可能会因此变得不可移植 目前是否有任何平台(C+11编译器可用)不存在这些类型 是否有任何“通用”平台(我知道这是一个模糊的词,但我想有一个答案,其中DSP和其他领域特定的平台被排除在外,因为这些平台很少成为移植软件的目标)目前,这些类型不存在 注1:我知道,有些硬件不支持这些类型。然而,我所知道的所有这些硬件都没有符合C++11的编译器。这个

C++11具有固定宽度,2的补码类型:
(u)int8\u t
(u)int16\u t
,等等

但是,这些类型是可选的

有时我需要使用这些类型,因此我的代码可能会因此变得不可移植

目前是否有任何平台(C+11编译器可用)不存在这些类型

是否有任何“通用”平台(我知道这是一个模糊的词,但我想有一个答案,其中DSP和其他领域特定的平台被排除在外,因为这些平台很少成为移植软件的目标)目前,这些类型不存在

注1:我知道,有些硬件不支持这些类型。然而,我所知道的所有这些硬件都没有符合C++11的编译器。这个问题是关于C++11实现的,其中实际上缺少固定宽度类型


注2:我知道,有强制的
least
fast
类型,但这个问题是关于确切的宽度类型。

intXX\u t
只能在两个互补的平台上使用,
CHAR\u BIT
是2的幂。但即使在这些平台上,也不可能存在所有的
intXX\t
。例如,
CHAR\u BIT==16的DSP显然不能有
int8\u t
。在
CHAR\u BIT==24
CHAR\u BIT==32
的DSP上不会有
int16\u t

TI C2000系列就是一个例子。是的,是的。不幸的是,它还没有C++11支持,但有许多其他的TI DSP

另一个例子是


这些类型也不存在补码和符号幅度平台。

注意,目前补码和符号幅度平台非常罕见。甚至,也有人建议声明签名数字是2的补码:@geza它们是否存在的事实与这些平台存在且没有定义这些类型的事实完全无关。如果你仔细想想,没有一个编译器是完全符合C++11的;总会有bug,当然也有针对特定DSP的独立C++11实现。除了bug和特定于编译器的扩展之外,这些实现确实倾向于声明一致性。感谢您的研究!注意,我把我的问题扩展了一点。很抱歉。我对平台感兴趣,它是通用的,通常人们将软件移植到。对于DSP,我们通常不移植软件,但专门为它们创建软件。@rubenvb:但我不关心没有C++11编译器的平台。这就是为什么我特别强调我对平台感兴趣,在平台上确实存在C++11编译器。如果当初没有C++11编译器,
int16\t
怎么会丢失呢?@phuclv:是的,这也是我的问题。这是一个更一般的问题。我提出这个问题,因为我没有得到这个问题的具体答案,说明C++的一致性。我倾向于认为实际上没有通用平台,它没有固定宽度的类型,所以使用它们是绝对好的。