我正在查看一些较旧的Apple C ++代码,我熟悉float而不是Float32和Uint32类型它们是否与标准float和int相同?
由于
答案 0 :(得分:8)
UInt32
是一个32位(4字节)无符号整数。这意味着它可以表示范围中的值
[0, 2^32-1]
(= [0, 4294967295]
)。
Float32
是一个32位(又名single-precision [与double-precision]对比)floating point number。
正如其他答案所提到的,存在类型以保证宽度。
答案 1 :(得分:1)
后缀给出了位大小。当且仅当标准float和int在目标机器上具有相同的大小时,这使它们相同。它们的存在是为了在所有平台上提供有保证的尺寸。
答案 2 :(得分:0)
我认为它们对于浮点类型分别是typedef
,而无符号整数类型保证为32位宽。
在大多数平台上,它们只会衰减到float
(至少在任何使用IEEE 754标准的机器上),在32位机器上衰减到unsigned int
(在某些64位平台上)可能会衰减到unsigned short
)。