web-dev-qa-db-ja.com

uint32とuint32_tの違い

可能性のある複製:
異なる整数型の違い

C/C++のuint32とuint32_tの違いは何ですか?

OSに依存していますか?

どの場合にどちらを使用すればよいですか?

ありがとう

72
Maxbester

uint32_tは標準ですが、uint32は標準ではありません。つまり、<inttypes.h>または<stdint.h>を含めると、uint32_tの定義を取得できます。 uint32はいくつかのローカルコードベースのtypedefですが、自分で定義しない限り存在することを期待すべきではありません。そして、自分で定義するのは悪い考えです。

99
William Pursell

uint32_tは、標準で定義されています。

18.4.1ヘッダー<cstdint>概要[cstdint.syn]

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

uint32はそうではなく、使いやすさのために(おそらくtypedef uint32_t uint32として)いくつかのコンパイラーによって提供されるショートカットです。

24
Luchian Grigore