型がコンパイラでサポートされているかどうかをテストするにはどうすればよいですか? uint64_t のように言います。特定のタイプをテストする方法を学習するために使用できるリファレンスはありますか?
これを検索エンジンで探すのは意外と大変です。「データ型のCテスト」などいろいろ試しました。
型がコンパイラでサポートされているかどうかをテストするにはどうすればよいですか? uint64_t のように言います。特定のタイプをテストする方法を学習するために使用できるリファレンスはありますか?
これを検索エンジンで探すのは意外と大変です。「データ型のCテスト」などいろいろ試しました。
次のことを確認できます。
UINT64_MAX
マクロはインクルード後に定義されstdint.h
ます。
c99 以降がサポートされているかどうかわからない場合は、チェックで囲んで__STDC_VERSION__
be にすることもできます>= 199901L
。__STDC_VERSION__
C89/C90 にはマクロが存在しないことにも注意してください。
標準から(強調鉱山):
(C99, 7.18p4) 「実装が提供する、ここに記述された型ごとに、224) その typedef 名を宣言し、関連するマクロを定義しなければならない。逆に、実装が提供しない、ここに記述された型ごとに、その typedef 名を宣言してはならない」また、関連するマクロを定義してはなりません。」
使用してみてください。存在しない場合は、コンパイラ エラーが発生します。のような型uint64_t
が入っていstdint.h
ます。