3

最近、次のようなデータ型を含むプログラムに出くわしました。

uint32_t, uint32, uint64 etc.

変更を加えずにWindows7(32ビット)でプログラムを実行できますか?私はMingWでCode::Blocks10.05を使用しています。

変更が必要な場合、どのデータ型でそれらを置き換えることができますか?

また、Cのどの標準がuint32_t、uint32などを定義しているのか知りたいですか?いわゆるgccCですか?

4

1 に答える 1

5

これらは、<stdint.h>C99で導入されたC標準ヘッダーからのものだと思います。

システムにC99または互換性のあるヘッダーがまだない場合は、実際に持っている必要があり、実際に調査する必要があります。自分で定義を再作成する必要があります。

これを行うには、たくさんのtypedefsを導入する必要があります。

typedef unsigned int uint32_t;

もちろん、それがコンパイラ上unsigned intで実際に正確に32ビットであることを確認した後などです。

しかし、これは必要ではないはずです。VisualStudioでさえ、このヘッダーを提供するのに十分なC99サポートを備えていると思います。

于 2013-03-26T15:20:48.830 に答える