Namespaces
Variants
Actions

C Standard Library headers

From cppreference.com
< c

The interface of C standard library is defined by the following collection of headers.

<assert.h>Conditionally compiled macro that compares its argument to zero
<complex.h> (since C99)Complex number arithmetic
<ctype.h>Functions to determine the type contained in character data
<errno.h>Macros reporting error conditions
<fenv.h> (since C99)Floating-point environment
<float.h>Limits of floating-point types
<inttypes.h> (since C99)Format conversion of integer types
<iso646.h> (since C95)Alternative operator spellings
<limits.h>Ranges of integer types
<locale.h>Localization utilities
<math.h>Common mathematics functions
<setjmp.h>Nonlocal jumps
<signal.h>Signal handling
<stdalign.h> (since C11)(deprecated in C23)alignas and alignof convenience macros
<stdarg.h>Variable arguments
<stdatomic.h> (since C11)Atomic operations
<stdbit.h> (since C23)Macros to work with the byte and bit representations of types
<stdbool.h> (since C99)(deprecated in C23)Macros for boolean type
<stdckdint.h> (since C23)Macros for performing checked integer arithmetic
<stddef.h>Common macro definitions
<stdint.h> (since C99)Fixed-width integer types
<stdio.h>Input/output
<stdlib.h>General utilities: memory management, program utilities, string conversions, random numbers, algorithms
<stdmchar.h> (since C29)Text transcode
<stdnoreturn.h> (since C11)(deprecated in C23)noreturn convenience macro
<string.h>String handling
<tgmath.h> (since C99)Type-generic math (macros wrapping <math.h> and <complex.h>)
<threads.h> (since C11)Thread library
<time.h>Time/date utilities
<uchar.h> (since C11)UTF-16 and UTF-32 character utilities
<wchar.h> (since C95)Extended multibyte and wide character utilities
<wctype.h> (since C95)Functions to determine the type contained in wide character data

[edit] Feature test macros (since C23)

Feature test macros are defined in corresponding headers respectively since C23. Note that not all headers contain such a macro.

#HeaderMacro nameValue
1<assert.h>__STDC_VERSION_ASSERT_H__202311L
2<complex.h>__STDC_VERSION_COMPLEX_H__202311L
3<ctype.h>N/A
4<errno.h>N/A
5<fenv.h>__STDC_VERSION_FENV_H__202311L
6<float.h>__STDC_VERSION_FLOAT_H__202311L
7<inttypes.h>__STDC_VERSION_INTTYPES_H__202311L
8<iso646.h>N/A
9<limits.h>__STDC_VERSION_LIMITS_H__202311L
10<locale.h>N/A
11<math.h>__STDC_VERSION_MATH_H__202311L
12<setjmp.h>__STDC_VERSION_SETJMP_H__202311L
13<signal.h>N/A
14<stdalign.h>N/A
15<stdarg.h>__STDC_VERSION_STDARG_H__202311L
16<stdatomic.h>__STDC_VERSION_STDATOMIC_H__202311L
17<stdbit.h>__STDC_VERSION_STDBIT_H__202311L
18<stdbool.h>N/A
19<stdckdint.h>__STDC_VERSION_STDCKDINT_H__202311L
20<stddef.h>__STDC_VERSION_STDDEF_H__202311L
21<stdint.h>__STDC_VERSION_STDINT_H__202311L
22<stdio.h>__STDC_VERSION_STDIO_H__202311L
23<stdlib.h>__STDC_VERSION_STDLIB_H__202311L
24<stdmchar.h>__STDC_VERSION_STDMCHAR_H__2029??L
25<stdnoreturn.h>N/A
26<string.h>__STDC_VERSION_STRING_H__202311L
27<tgmath.h>__STDC_VERSION_TGMATH_H__202311L
28<threads.h>N/A
29<time.h>__STDC_VERSION_TIME_H__202311L
30<uchar.h>__STDC_VERSION_UCHAR_H__202311L
31<wchar.h>__STDC_VERSION_WCHAR_H__202311L
32<wctype.h>N/A

[edit] References

  • C23 standard (ISO/IEC 9899:2024):
  • 7.1.2 Standard headers
  • C17 standard (ISO/IEC 9899:2018):
  • 7.1.2 Standard headers (p: 131-132)
  • C11 standard (ISO/IEC 9899:2011):
  • 7.1.2 Standard headers (p: 181-182)
  • C99 standard (ISO/IEC 9899:1999):
  • 7.1.2 Standard headers (p: 165)
  • C89/C90 standard (ISO/IEC 9899:1990):
  • 4.1.2 Standard headers

[edit] See also

C++ documentation for Standard Library headers