33 #error "Use this header only with Microsoft Visual C++ compilers!" 36 #ifndef _MSC_INTTYPES_H_ // [ 37 #define _MSC_INTTYPES_H_ 50 #if !defined(__cplusplus) || defined(__STDC_FORMAT_MACROS) // [ See footnote 185 at page 198 55 #define PRIdLEAST8 "d" 56 #define PRIiLEAST8 "i" 62 #define PRIdLEAST16 "hd" 63 #define PRIiLEAST16 "hi" 64 #define PRIdFAST16 "hd" 65 #define PRIiFAST16 "hi" 69 #define PRIdLEAST32 "I32d" 70 #define PRIiLEAST32 "I32i" 71 #define PRIdFAST32 "I32d" 72 #define PRIiFAST32 "I32i" 76 #define PRIdLEAST64 "I64d" 77 #define PRIiLEAST64 "I64i" 78 #define PRIdFAST64 "I64d" 79 #define PRIiFAST64 "I64i" 81 #define PRIdMAX "I64d" 82 #define PRIiMAX "I64i" 92 #define PRIoLEAST8 "o" 93 #define PRIuLEAST8 "u" 94 #define PRIxLEAST8 "x" 95 #define PRIXLEAST8 "X" 105 #define PRIoLEAST16 "ho" 106 #define PRIuLEAST16 "hu" 107 #define PRIxLEAST16 "hx" 108 #define PRIXLEAST16 "hX" 109 #define PRIoFAST16 "ho" 110 #define PRIuFAST16 "hu" 111 #define PRIxFAST16 "hx" 112 #define PRIXFAST16 "hX" 114 #define PRIo32 "I32o" 115 #define PRIu32 "I32u" 116 #define PRIx32 "I32x" 117 #define PRIX32 "I32X" 118 #define PRIoLEAST32 "I32o" 119 #define PRIuLEAST32 "I32u" 120 #define PRIxLEAST32 "I32x" 121 #define PRIXLEAST32 "I32X" 122 #define PRIoFAST32 "I32o" 123 #define PRIuFAST32 "I32u" 124 #define PRIxFAST32 "I32x" 125 #define PRIXFAST32 "I32X" 127 #define PRIo64 "I64o" 128 #define PRIu64 "I64u" 129 #define PRIx64 "I64x" 130 #define PRIX64 "I64X" 131 #define PRIoLEAST64 "I64o" 132 #define PRIuLEAST64 "I64u" 133 #define PRIxLEAST64 "I64x" 134 #define PRIXLEAST64 "I64X" 135 #define PRIoFAST64 "I64o" 136 #define PRIuFAST64 "I64u" 137 #define PRIxFAST64 "I64x" 138 #define PRIXFAST64 "I64X" 140 #define PRIoMAX "I64o" 141 #define PRIuMAX "I64u" 142 #define PRIxMAX "I64x" 143 #define PRIXMAX "I64X" 156 #define SCNdLEAST8 "d" 157 #define SCNiLEAST8 "i" 158 #define SCNdFAST8 "d" 159 #define SCNiFAST8 "i" 163 #define SCNdLEAST16 "hd" 164 #define SCNiLEAST16 "hi" 165 #define SCNdFAST16 "hd" 166 #define SCNiFAST16 "hi" 170 #define SCNdLEAST32 "ld" 171 #define SCNiLEAST32 "li" 172 #define SCNdFAST32 "ld" 173 #define SCNiFAST32 "li" 175 #define SCNd64 "I64d" 176 #define SCNi64 "I64i" 177 #define SCNdLEAST64 "I64d" 178 #define SCNiLEAST64 "I64i" 179 #define SCNdFAST64 "I64d" 180 #define SCNiFAST64 "I64i" 182 #define SCNdMAX "I64d" 183 #define SCNiMAX "I64i" 186 # define SCNdPTR "I64d" 187 # define SCNiPTR "I64i" 189 # define SCNdPTR "ld" 190 # define SCNiPTR "li" 198 #define SCNoLEAST8 "o" 199 #define SCNuLEAST8 "u" 200 #define SCNxLEAST8 "x" 201 #define SCNXLEAST8 "X" 202 #define SCNoFAST8 "o" 203 #define SCNuFAST8 "u" 204 #define SCNxFAST8 "x" 205 #define SCNXFAST8 "X" 211 #define SCNoLEAST16 "ho" 212 #define SCNuLEAST16 "hu" 213 #define SCNxLEAST16 "hx" 214 #define SCNXLEAST16 "hX" 215 #define SCNoFAST16 "ho" 216 #define SCNuFAST16 "hu" 217 #define SCNxFAST16 "hx" 218 #define SCNXFAST16 "hX" 224 #define SCNoLEAST32 "lo" 225 #define SCNuLEAST32 "lu" 226 #define SCNxLEAST32 "lx" 227 #define SCNXLEAST32 "lX" 228 #define SCNoFAST32 "lo" 229 #define SCNuFAST32 "lu" 230 #define SCNxFAST32 "lx" 231 #define SCNXFAST32 "lX" 233 #define SCNo64 "I64o" 234 #define SCNu64 "I64u" 235 #define SCNx64 "I64x" 236 #define SCNX64 "I64X" 237 #define SCNoLEAST64 "I64o" 238 #define SCNuLEAST64 "I64u" 239 #define SCNxLEAST64 "I64x" 240 #define SCNXLEAST64 "I64X" 241 #define SCNoFAST64 "I64o" 242 #define SCNuFAST64 "I64u" 243 #define SCNxFAST64 "I64x" 244 #define SCNXFAST64 "I64X" 246 #define SCNoMAX "I64o" 247 #define SCNuMAX "I64u" 248 #define SCNxMAX "I64x" 249 #define SCNXMAX "I64X" 252 # define SCNoPTR "I64o" 253 # define SCNuPTR "I64u" 254 # define SCNxPTR "I64x" 255 # define SCNXPTR "I64X" 257 # define SCNoPTR "lo" 258 # define SCNuPTR "lu" 259 # define SCNxPTR "lx" 260 # define SCNXPTR "lX" 263 #endif // __STDC_FORMAT_MACROS ] 268 #define imaxabs _abs64 274 #ifdef STATIC_IMAXDIV // [ 276 #else // STATIC_IMAXDIV ][ 278 #endif // STATIC_IMAXDIV ] 279 imaxdiv_t __cdecl imaxdiv(intmax_t numer, intmax_t denom)
283 result.quot = numer / denom;
284 result.rem = numer % denom;
286 if (numer < 0 && result.rem > 0) {
296 #define strtoimax _strtoi64 297 #define strtoumax _strtoui64 300 #define wcstoimax _wcstoi64 301 #define wcstoumax _wcstoui64 304 #endif // _MSC_INTTYPES_H_ ]