1 2 #if defined(_MSC_VER) && defined(_WIN32_WCE) && (_WIN32_WCE < 0x800) && !defined(_STDINT_H_) && !defined(_STDINT) 3 #define _STDINT 4 5 typedef __int8 6 int8_t, 7 int_least8_t; 8 9 typedef __int16 10 int16_t, 11 int_least16_t; 12 13 typedef __int32 14 int32_t, 15 int_least32_t, 16 int_fast8_t, 17 int_fast16_t, 18 int_fast32_t; 19 20 typedef __int64 21 int64_t, 22 intmax_t, 23 int_least64_t, 24 int_fast64_t; 25 26 typedef unsigned __int8 27 uint8_t, 28 uint_least8_t; 29 30 typedef unsigned __int16 31 uint16_t, 32 uint_least16_t; 33 34 typedef unsigned __int32 35 uint32_t, 36 uint_least32_t, 37 uint_fast8_t, 38 uint_fast16_t, 39 uint_fast32_t; 40 41 typedef unsigned __int64 42 uint64_t, 43 uintmax_t, 44 uint_least64_t, 45 uint_fast64_t; 46 47 #ifndef _INTPTR_T_DEFINED 48 #define _INTPTR_T_DEFINED 49 typedef __int32 intptr_t; 50 #endif 51 52 #ifndef _UINTPTR_T_DEFINED 53 #define _UINTPTR_T_DEFINED 54 typedef unsigned __int32 uintptr_t; 55 #endif 56 57 #define INT8_MIN (-127i8 - 1) 58 #define INT16_MIN (-32767i16 - 1) 59 #define INT32_MIN (-2147483647i32 - 1) 60 #define INT64_MIN (-9223372036854775807i64 - 1) 61 #define INT8_MAX 127i8 62 #define INT16_MAX 32767i16 63 #define INT32_MAX 2147483647i32 64 #define INT64_MAX 9223372036854775807i64 65 #define UINT8_MAX 0xffui8 66 #define UINT16_MAX 0xffffui16 67 #define UINT32_MAX 0xffffffffui32 68 #define UINT64_MAX 0xffffffffffffffffui64 69 70 #define INT_LEAST8_MIN INT8_MIN 71 #define INT_LEAST16_MIN INT16_MIN 72 #define INT_LEAST32_MIN INT32_MIN 73 #define INT_LEAST64_MIN INT64_MIN 74 #define INT_LEAST8_MAX INT8_MAX 75 #define INT_LEAST16_MAX INT16_MAX 76 #define INT_LEAST32_MAX INT32_MAX 77 #define INT_LEAST64_MAX INT64_MAX 78 #define UINT_LEAST8_MAX UINT8_MAX 79 #define UINT_LEAST16_MAX UINT16_MAX 80 #define UINT_LEAST32_MAX UINT32_MAX 81 #define UINT_LEAST64_MAX UINT64_MAX 82 83 #define INT_FAST8_MIN INT8_MIN 84 #define INT_FAST16_MIN INT32_MIN 85 #define INT_FAST32_MIN INT32_MIN 86 #define INT_FAST64_MIN INT64_MIN 87 #define INT_FAST8_MAX INT8_MAX 88 #define INT_FAST16_MAX INT32_MAX 89 #define INT_FAST32_MAX INT32_MAX 90 #define INT_FAST64_MAX INT64_MAX 91 #define UINT_FAST8_MAX UINT8_MAX 92 #define UINT_FAST16_MAX UINT32_MAX 93 #define UINT_FAST32_MAX UINT32_MAX 94 #define UINT_FAST64_MAX UINT64_MAX 95 96 #define INTPTR_MIN INT32_MIN 97 #define INTPTR_MAX INT32_MAX 98 #define UINTPTR_MAX UINT32_MAX 99 100 #define INTMAX_MIN INT64_MIN 101 #define INTMAX_MAX INT64_MAX 102 #define UINTMAX_MAX UINT64_MAX 103 104 #define PTRDIFF_MIN INTPTR_MIN 105 #define PTRDIFF_MAX INTPTR_MAX 106 107 #ifndef SIZE_MAX 108 #define SIZE_MAX UINTPTR_MAX 109 #endif 110 111 #define SIG_ATOMIC_MIN INT32_MIN 112 #define SIG_ATOMIC_MAX INT32_MAX 113 114 #define WCHAR_MIN 0x0000 115 #define WCHAR_MAX 0xffff 116 117 #define WINT_MIN 0x0000 118 #define WINT_MAX 0xffff 119 120 #define INT8_C(x) (x) 121 #define INT16_C(x) (x) 122 #define INT32_C(x) (x) 123 #define INT64_C(x) (x ## LL) 124 125 #define UINT8_C(x) (x) 126 #define UINT16_C(x) (x) 127 #define UINT32_C(x) (x ## U) 128 #define UINT64_C(x) (x ## ULL) 129 130 #define INTMAX_C(x) INT64_C(x) 131 #define UINTMAX_C(x) UINT64_C(x) 132 133 #endif 134