如何解决在Visual C ++中相当于int32_t?
| 在Visual C ++中等效于int32_t?解决方法
Visual C ++ 2010包含
<cstdint>
,其中包括typedefstd::int32_t
(您还可以包括<stdint.h>
,它在全局命名空间中具有相同的typedef)。
如果您使用的是Visual C ++的旧版本,则可以使用Boost \的<cstdint>
实现。
,我要做的是确保类型像这样后,创建自己的typedef:
#ifdef _MSC_VER
#if _MSC_VER >= 1600
#include <cstdint>
#else
typedef __int8 int8_t;
typedef __int16 int16_t;
typedef __int32 int32_t;
typedef __int64 int64_t;
typedef unsigned __int8 uint8_t;
typedef unsigned __int16 uint16_t;
typedef unsigned __int32 uint32_t;
typedef unsigned __int64 uint64_t;
#endif
#elif __GNUC__ >= 3
#include <cstdint>
#endif
typedef int8_t s8;
typedef int16_t s16;
typedef int32_t s32;
typedef int64_t s64;
typedef uint8_t u8;
typedef uint16_t u16;
typedef uint32_t u32;
typedef uint64_t u64;
,如果您具有Visual Studio的ѭ5之前版本,则可以使用__int32
。
,int
。但是,如果您想在2010年之前的VC ++版本(其中引入了ѭ5s头)中继续使用stdint typedef,请考虑使用Boost.Config \的cstdint实现。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。