8

私のpchファイルには、次の定義があります。

#if (_MSC_VER < 1300)
   typedef signed char       int8_t;
   typedef signed short      int16_t;
   typedef signed int        int32_t;
   typedef unsigned char     uint8_t;
   typedef unsigned short    uint16_t;
   typedef unsigned int      uint32_t;
#else
   typedef signed __int8     int8_t;
   typedef signed __int16    int16_t;
   typedef signed __int32    int32_t;
   typedef unsigned __int8   uint8_t;
   typedef unsigned __int16  uint16_t;
   typedef unsigned __int32  uint32_t;
#endif
typedef signed __int64       int64_t;
typedef unsigned __int64     uint64_t;  

アプリケーションをビルドすると、エラーが発生します

typedef signed __int64       int64_t;
typedef unsigned __int64     uint64_t; 

これは、 _int64 が type に名前を付けていないことを示しています。何が問題なのですか?

4

2 に答える 2

8

このインクルードを追加

#include <inttypes.h>

次に、uint64_t または int64_t を使用します。

下記参照

#include <inttypes.h>


#if (_MSC_VER < 1300)
   typedef signed char       int8_t;
   typedef signed short      int16_t;
   typedef signed int        int32_t;
   typedef unsigned char     uint8_t;
   typedef unsigned short    uint16_t;
   typedef unsigned int      uint32_t;
#else
   typedef signed __int8     int8_t;
   typedef signed __int16    int16_t;
   typedef signed __int32    int32_t;
   typedef unsigned __int8   uint8_t;
   typedef unsigned __int16  uint16_t;
   typedef unsigned __int32  uint32_t;
#endif
typedef signed __int64       int64_t;
typedef unsigned __int64     uint64_t;  
于 2011-08-24T11:24:03.830 に答える
4

__int64GCC でMSVC 固有のタイプを使用しようとしているようです。それは機能しませんlong long。代わりに使用してください。

于 2011-08-24T11:21:29.063 に答える