Where Online Learning is simpler!
The C and C++ Include Header Files
cat -n /usr/include/c++/15/cstdint
1 // <cstdint> -*- C++ -*- 2 3 // Copyright (C) 2007-2025 Free Software Foundation, Inc. 4 // 5 // This file is part of the GNU ISO C++ Library. This library is free 6 // software; you can redistribute it and/or modify it under the 7 // terms of the GNU General Public License as published by the 8 // Free Software Foundation; either version 3, or (at your option) 9 // any later version. 10 11 // This library is distributed in the hope that it will be useful, 12 // but WITHOUT ANY WARRANTY; without even the implied warranty of 13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 // GNU General Public License for more details. 15 16 // Under Section 7 of GPL version 3, you are granted additional 17 // permissions described in the GCC Runtime Library Exception, version 18 // 3.1, as published by the Free Software Foundation. 19 20 // You should have received a copy of the GNU General Public License and 21 // a copy of the GCC Runtime Library Exception along with this program; 22 // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see 23 // <http://www.gnu.org/licenses/>. 24 25 /** @file include/cstdint 26 * This is a Standard C++ Library header. 27 */ 28 29 #ifndef _GLIBCXX_CSTDINT 30 #define _GLIBCXX_CSTDINT 1 31 32 #ifdef _GLIBCXX_SYSHDR 33 #pragma GCC system_header 34 #endif 35 36 #if __cplusplus < 201103L 37 # include <bits/c++0x_warning.h> 38 #else 39 40 #include <bits/c++config.h> 41 42 #if ! _GLIBCXX_HOSTED && __has_include(<stdint-gcc.h>) 43 // For --disable-hosted-libstdcxx we want GCC's own stdint-gcc.h header 44 // even when -ffreestanding isn't used. 45 # include <stdint-gcc.h> 46 #elif __has_include(<stdint.h>) 47 # include <stdint.h> 48 #endif 49 50 namespace std 51 { 52 #ifdef _GLIBCXX_USE_C99_STDINT 53 using ::int8_t; 54 using ::int16_t; 55 using ::int32_t; 56 using ::int64_t; 57 58 using ::int_fast8_t; 59 using ::int_fast16_t; 60 using ::int_fast32_t; 61 using ::int_fast64_t; 62 63 using ::int_least8_t; 64 using ::int_least16_t; 65 using ::int_least32_t; 66 using ::int_least64_t; 67 68 using ::intmax_t; 69 using ::intptr_t; 70 71 using ::uint8_t; 72 using ::uint16_t; 73 using ::uint32_t; 74 using ::uint64_t; 75 76 using ::uint_fast8_t; 77 using ::uint_fast16_t; 78 using ::uint_fast32_t; 79 using ::uint_fast64_t; 80 81 using ::uint_least8_t; 82 using ::uint_least16_t; 83 using ::uint_least32_t; 84 using ::uint_least64_t; 85 86 using ::uintmax_t; 87 using ::uintptr_t; 88 #else // !_GLIBCXX_USE_C99_STDINT 89 90 using intmax_t = __INTMAX_TYPE__; 91 using uintmax_t = __UINTMAX_TYPE__; 92 93 #ifdef __INT8_TYPE__ 94 using int8_t = __INT8_TYPE__; 95 #endif 96 #ifdef __INT16_TYPE__ 97 using int16_t = __INT16_TYPE__; 98 #endif 99 #ifdef __INT32_TYPE__ 100 using int32_t = __INT32_TYPE__; 101 #endif 102 #ifdef __INT64_TYPE__ 103 using int64_t = __INT64_TYPE__; 104 #endif 105 106 using int_least8_t = __INT_LEAST8_TYPE__; 107 using int_least16_t = __INT_LEAST16_TYPE__; 108 using int_least32_t = __INT_LEAST32_TYPE__; 109 using int_least64_t = __INT_LEAST64_TYPE__; 110 using int_fast8_t = __INT_FAST8_TYPE__; 111 using int_fast16_t = __INT_FAST16_TYPE__; 112 using int_fast32_t = __INT_FAST32_TYPE__; 113 using int_fast64_t = __INT_FAST64_TYPE__; 114 115 #ifdef __INTPTR_TYPE__ 116 using intptr_t = __INTPTR_TYPE__; 117 #endif 118 119 #ifdef __UINT8_TYPE__ 120 using uint8_t = __UINT8_TYPE__; 121 #endif 122 #ifdef __UINT16_TYPE__ 123 using uint16_t = __UINT16_TYPE__; 124 #endif 125 #ifdef __UINT32_TYPE__ 126 using uint32_t = __UINT32_TYPE__; 127 #endif 128 #ifdef __UINT64_TYPE__ 129 using uint64_t = __UINT64_TYPE__; 130 #endif 131 using uint_least8_t = __UINT_LEAST8_TYPE__; 132 using uint_least16_t = __UINT_LEAST16_TYPE__; 133 using uint_least32_t = __UINT_LEAST32_TYPE__; 134 using uint_least64_t = __UINT_LEAST64_TYPE__; 135 using uint_fast8_t = __UINT_FAST8_TYPE__; 136 using uint_fast16_t = __UINT_FAST16_TYPE__; 137 using uint_fast32_t = __UINT_FAST32_TYPE__; 138 using uint_fast64_t = __UINT_FAST64_TYPE__; 139 #ifdef __UINTPTR_TYPE__ 140 using uintptr_t = __UINTPTR_TYPE__; 141 #endif 142 143 #endif // _GLIBCXX_USE_C99_STDINT 144 } // namespace std 145 146 #endif // C++11 147 148 #endif // _GLIBCXX_CSTDINT