質問

MSVC ++コンパイラでは、特定のサイズの整数に__int8__int16__int32および同様のタイプを使用できます。これは、カスタムファイル形式、ハードウェア制御データ構造などの低レベルのデータ構造を操作する必要があるアプリケーションに非常に役立ちます。

GCCコンパイラで使用できる類似の同等物はありますか?

役に立ちましたか?

解決

ISO標準Cは、C99標準から始まり、これらを定義する標準ヘッダー<stdint.h>を追加します。

uint8_t  - unsigned 8 bit
int8_t   - signed 8 bit
uint16_t - unsigned 16 bit
int16_t  - signed 16 bit
uint32_t - unsigned 32 bit
int32_t  - signed 32 bit
uint64_t - unsigned 64 bit
int64_t  - signed 64 bit

これらのタイプは常に使用しています。

これらの型は、実装が適切なサイズと特性を持つ事前定義型をサポートする場合にのみ定義されます(ほとんどの場合)。

(u)int_leastN_tは、(u)int_fastN_t(指定された幅以上の 型)および<=>(<!> quot; fastest <!> quot ;少なくとも指定された幅を持つ型);これらのタイプは必須です。

<=>をサポートしない古い実装を使用している場合、独自のロールを使用できます。 1つの実装は、 Doug Gwynの<!> quot; q8 <!> quot ;

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top