The C and C++ Include Header Files
/usr/include/stdint.h
$ cat -n /usr/include/stdint.h 1 /* Copyright (C) 1997-2024 Free Software Foundation, Inc. 2 This file is part of the GNU C Library. 3 4 The GNU C Library is free software; you can redistribute it and/or 5 modify it under the terms of the GNU Lesser General Public 6 License as published by the Free Software Foundation; either 7 version 2.1 of the License, or (at your option) any later version. 8 9 The GNU C Library is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 Lesser General Public License for more details. 13 14 You should have received a copy of the GNU Lesser General Public 15 License along with the GNU C Library; if not, see 16
. */ 17 18 /* 19 * ISO C99: 7.18 Integer types
20 */ 21 22 #ifndef _STDINT_H 23 #define _STDINT_H 1 24 25 #define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION 26 #include
27 #include
28 #include
29 #include
30 31 /* Exact integral types. */ 32 33 /* Signed. */ 34 #include
35 36 /* Unsigned. */ 37 #include
38 39 40 /* Small types. */ 41 #include
42 43 44 /* Fast types. */ 45 46 /* Signed. */ 47 typedef signed char int_fast8_t; 48 #if __WORDSIZE == 64 49 typedef long int int_fast16_t; 50 typedef long int int_fast32_t; 51 typedef long int int_fast64_t; 52 #else 53 typedef int int_fast16_t; 54 typedef int int_fast32_t; 55 __extension__ 56 typedef long long int int_fast64_t; 57 #endif 58 59 /* Unsigned. */ 60 typedef unsigned char uint_fast8_t; 61 #if __WORDSIZE == 64 62 typedef unsigned long int uint_fast16_t; 63 typedef unsigned long int uint_fast32_t; 64 typedef unsigned long int uint_fast64_t; 65 #else 66 typedef unsigned int uint_fast16_t; 67 typedef unsigned int uint_fast32_t; 68 __extension__ 69 typedef unsigned long long int uint_fast64_t; 70 #endif 71 72 73 /* Types for `void *' pointers. */ 74 #if __WORDSIZE == 64 75 # ifndef __intptr_t_defined 76 typedef long int intptr_t; 77 # define __intptr_t_defined 78 # endif 79 typedef unsigned long int uintptr_t; 80 #else 81 # ifndef __intptr_t_defined 82 typedef int intptr_t; 83 # define __intptr_t_defined 84 # endif 85 typedef unsigned int uintptr_t; 86 #endif 87 88 89 /* Largest integral types. */ 90 typedef __intmax_t intmax_t; 91 typedef __uintmax_t uintmax_t; 92 93 94 # if __WORDSIZE == 64 95 # define __INT64_C(c) c ## L 96 # define __UINT64_C(c) c ## UL 97 # else 98 # define __INT64_C(c) c ## LL 99 # define __UINT64_C(c) c ## ULL 100 # endif 101 102 /* Limits of integral types. */ 103 104 /* Minimum of signed integral types. */ 105 # define INT8_MIN (-128) 106 # define INT16_MIN (-32767-1) 107 # define INT32_MIN (-2147483647-1) 108 # define INT64_MIN (-__INT64_C(9223372036854775807)-1) 109 /* Maximum of signed integral types. */ 110 # define INT8_MAX (127) 111 # define INT16_MAX (32767) 112 # define INT32_MAX (2147483647) 113 # define INT64_MAX (__INT64_C(9223372036854775807)) 114 115 /* Maximum of unsigned integral types. */ 116 # define UINT8_MAX (255) 117 # define UINT16_MAX (65535) 118 # define UINT32_MAX (4294967295U) 119 # define UINT64_MAX (__UINT64_C(18446744073709551615)) 120 121 122 /* Minimum of signed integral types having a minimum size. */ 123 # define INT_LEAST8_MIN (-128) 124 # define INT_LEAST16_MIN (-32767-1) 125 # define INT_LEAST32_MIN (-2147483647-1) 126 # define INT_LEAST64_MIN (-__INT64_C(9223372036854775807)-1) 127 /* Maximum of signed integral types having a minimum size. */ 128 # define INT_LEAST8_MAX (127) 129 # define INT_LEAST16_MAX (32767) 130 # define INT_LEAST32_MAX (2147483647) 131 # define INT_LEAST64_MAX (__INT64_C(9223372036854775807)) 132 133 /* Maximum of unsigned integral types having a minimum size. */ 134 # define UINT_LEAST8_MAX (255) 135 # define UINT_LEAST16_MAX (65535) 136 # define UINT_LEAST32_MAX (4294967295U) 137 # define UINT_LEAST64_MAX (__UINT64_C(18446744073709551615)) 138 139 140 /* Minimum of fast signed integral types having a minimum size. */ 141 # define INT_FAST8_MIN (-128) 142 # if __WORDSIZE == 64 143 # define INT_FAST16_MIN (-9223372036854775807L-1) 144 # define INT_FAST32_MIN (-9223372036854775807L-1) 145 # else 146 # define INT_FAST16_MIN (-2147483647-1) 147 # define INT_FAST32_MIN (-2147483647-1) 148 # endif 149 # define INT_FAST64_MIN (-__INT64_C(9223372036854775807)-1) 150 /* Maximum of fast signed integral types having a minimum size. */ 151 # define INT_FAST8_MAX (127) 152 # if __WORDSIZE == 64 153 # define INT_FAST16_MAX (9223372036854775807L) 154 # define INT_FAST32_MAX (9223372036854775807L) 155 # else 156 # define INT_FAST16_MAX (2147483647) 157 # define INT_FAST32_MAX (2147483647) 158 # endif 159 # define INT_FAST64_MAX (__INT64_C(9223372036854775807)) 160 161 /* Maximum of fast unsigned integral types having a minimum size. */ 162 # define UINT_FAST8_MAX (255) 163 # if __WORDSIZE == 64 164 # define UINT_FAST16_MAX (18446744073709551615UL) 165 # define UINT_FAST32_MAX (18446744073709551615UL) 166 # else 167 # define UINT_FAST16_MAX (4294967295U) 168 # define UINT_FAST32_MAX (4294967295U) 169 # endif 170 # define UINT_FAST64_MAX (__UINT64_C(18446744073709551615)) 171 172 173 /* Values to test for integral types holding `void *' pointer. */ 174 # if __WORDSIZE == 64 175 # define INTPTR_MIN (-9223372036854775807L-1) 176 # define INTPTR_MAX (9223372036854775807L) 177 # define UINTPTR_MAX (18446744073709551615UL) 178 # else 179 # define INTPTR_MIN (-2147483647-1) 180 # define INTPTR_MAX (2147483647) 181 # define UINTPTR_MAX (4294967295U) 182 # endif 183 184 185 /* Minimum for largest signed integral type. */ 186 # define INTMAX_MIN (-__INT64_C(9223372036854775807)-1) 187 /* Maximum for largest signed integral type. */ 188 # define INTMAX_MAX (__INT64_C(9223372036854775807)) 189 190 /* Maximum for largest unsigned integral type. */ 191 # define UINTMAX_MAX (__UINT64_C(18446744073709551615)) 192 193 194 /* Limits of other integer types. */ 195 196 /* Limits of `ptrdiff_t' type. */ 197 # if __WORDSIZE == 64 198 # define PTRDIFF_MIN (-9223372036854775807L-1) 199 # define PTRDIFF_MAX (9223372036854775807L) 200 # else 201 # if __WORDSIZE32_PTRDIFF_LONG 202 # define PTRDIFF_MIN (-2147483647L-1) 203 # define PTRDIFF_MAX (2147483647L) 204 # else 205 # define PTRDIFF_MIN (-2147483647-1) 206 # define PTRDIFF_MAX (2147483647) 207 # endif 208 # endif 209 210 /* Limits of `sig_atomic_t'. */ 211 # define SIG_ATOMIC_MIN (-2147483647-1) 212 # define SIG_ATOMIC_MAX (2147483647) 213 214 /* Limit of `size_t' type. */ 215 # if __WORDSIZE == 64 216 # define SIZE_MAX (18446744073709551615UL) 217 # else 218 # if __WORDSIZE32_SIZE_ULONG 219 # define SIZE_MAX (4294967295UL) 220 # else 221 # define SIZE_MAX (4294967295U) 222 # endif 223 # endif 224 225 /* Limits of `wchar_t'. */ 226 # ifndef WCHAR_MIN 227 /* These constants might also be defined in
. */ 228 # define WCHAR_MIN __WCHAR_MIN 229 # define WCHAR_MAX __WCHAR_MAX 230 # endif 231 232 /* Limits of `wint_t'. */ 233 # define WINT_MIN (0u) 234 # define WINT_MAX (4294967295u) 235 236 /* Signed. */ 237 # define INT8_C(c) c 238 # define INT16_C(c) c 239 # define INT32_C(c) c 240 # if __WORDSIZE == 64 241 # define INT64_C(c) c ## L 242 # else 243 # define INT64_C(c) c ## LL 244 # endif 245 246 /* Unsigned. */ 247 # define UINT8_C(c) c 248 # define UINT16_C(c) c 249 # define UINT32_C(c) c ## U 250 # if __WORDSIZE == 64 251 # define UINT64_C(c) c ## UL 252 # else 253 # define UINT64_C(c) c ## ULL 254 # endif 255 256 /* Maximal type. */ 257 # if __WORDSIZE == 64 258 # define INTMAX_C(c) c ## L 259 # define UINTMAX_C(c) c ## UL 260 # else 261 # define INTMAX_C(c) c ## LL 262 # define UINTMAX_C(c) c ## ULL 263 # endif 264 265 #if __GLIBC_USE (IEC_60559_BFP_EXT_C2X) 266 267 # define INT8_WIDTH 8 268 # define UINT8_WIDTH 8 269 # define INT16_WIDTH 16 270 # define UINT16_WIDTH 16 271 # define INT32_WIDTH 32 272 # define UINT32_WIDTH 32 273 # define INT64_WIDTH 64 274 # define UINT64_WIDTH 64 275 276 # define INT_LEAST8_WIDTH 8 277 # define UINT_LEAST8_WIDTH 8 278 # define INT_LEAST16_WIDTH 16 279 # define UINT_LEAST16_WIDTH 16 280 # define INT_LEAST32_WIDTH 32 281 # define UINT_LEAST32_WIDTH 32 282 # define INT_LEAST64_WIDTH 64 283 # define UINT_LEAST64_WIDTH 64 284 285 # define INT_FAST8_WIDTH 8 286 # define UINT_FAST8_WIDTH 8 287 # define INT_FAST16_WIDTH __WORDSIZE 288 # define UINT_FAST16_WIDTH __WORDSIZE 289 # define INT_FAST32_WIDTH __WORDSIZE 290 # define UINT_FAST32_WIDTH __WORDSIZE 291 # define INT_FAST64_WIDTH 64 292 # define UINT_FAST64_WIDTH 64 293 294 # define INTPTR_WIDTH __WORDSIZE 295 # define UINTPTR_WIDTH __WORDSIZE 296 297 # define INTMAX_WIDTH 64 298 # define UINTMAX_WIDTH 64 299 300 # define PTRDIFF_WIDTH __WORDSIZE 301 # define SIG_ATOMIC_WIDTH 32 302 # define SIZE_WIDTH __WORDSIZE 303 # define WCHAR_WIDTH 32 304 # define WINT_WIDTH 32 305 306 #endif 307 308 #endif /* stdint.h */
Contact us
|
About us
|
Term of use
|
Copyright © 2000-2024 MyWebUniversity.com ™