uint32和uint32_t之间的区别

时间:2012-11-13 14:01:21

标签: c++ c uint32 uint32-t

  

可能重复:
  Difference between different integer types

在C / C ++中uint32和uint32_t有什么区别?

他们是否依赖操作系统?

在哪种情况下,我应该使用其中一种?

由于

2 个答案:

答案 0 :(得分:97)

uint32_t是标准的,uint32不是。也就是说,如果您加入<inttypes.h><stdint.h>,则会得到uint32_t的定义。 uint32是某些本地代码库中的typedef,但除非您自己定义,否则不应指望它存在。自己定义它是一个坏主意。

答案 1 :(得分:23)

uint32_t在标准中定义,

18.4.1标题<cstdint>概要[cstdint.syn]

namespace std {
//...
typedef unsigned integer type uint32_t; // optional
//...
}

uint32不是,它是一些编译器提供的快捷方式(可能是typedef uint32_t uint32),以方便使用。