驚いたことに、C99のstdint.hがMS Visual Studio 2003以降にないことがわかりました。彼らには理由があると確信していますが、誰がどこでコピーをダウンロードできるか知っていますか?このヘッダーがないと、uint32_tなどの有用な型の定義がありません。
驚いたことに、C99のstdint.hがMS Visual Studio 2003以降にないことがわかりました。彼らには理由があると確信していますが、誰がどこでコピーをダウンロードできるか知っていますか?このヘッダーがないと、uint32_tなどの有用な型の定義がありません。
回答:
このヘッダーのMSバージョンを次の場所からダウンロードできることがわかります。
https://github.com/mattn/gntp-send/blob/master/include/msinttypes/stdint.h
ポータブルなものはここにあります:
http://www.azillionmonkeys.com/qed/pstdint.h
Software Ramblingのブログに感謝します。
自分で定義してください。
#ifdef _MSC_VER
typedef __int32 int32_t;
typedef unsigned __int32 uint32_t;
typedef __int64 int64_t;
typedef unsigned __int64 uint64_t;
#else
#include <stdint.h>
#endif
#define U64(u) (u##ui64)
、Windowsや#define U64(u) (u##ULL)
その他の場合に役立ちます。
更新:Visual Studio 2010とVisual C ++ 2010 Expressの両方にがありstdint.h
ます。それはで見つけることができますC:\Program Files\Microsoft Visual Studio 10.0\VC\include
std::
です。
ブーストは、あなたが探しているタイプのcstdint.hppヘッダファイルが含まれていますhttp://www.boost.org/doc/libs/1_36_0/boost/cstdint.hpp
<stdint.h>
Boostヘッダーではなくのコピーを必要としています。
別のポータブルソリューション:
POSH:ポータブルオープンソースハーネス
「POSHは、クロスプラットフォームのライブラリやアプリケーションを作成して移植する手間を大幅に軽減するように設計された、シンプルでポータブル、使いやすく、統合しやすく、柔軟なオープンソースの「ハーネス」です。」
http://poshlib.hookatooka.com/poshlib/trac.cgi
本で説明および使用されているとおり:移植可能なコードを書く:複数のプラットフォーム用のソフトウェア開発の概要 Brian Hook著 http://books.google.ca/books?id=4VOKcEAPPO0C
-ジェイソン
stdint.h