The C standard library is the standard library for the C programming language, as specified in the ANSI C standard.It is also called the ISO C library.
The C standard library provides macros, type definitions and functions for tasks such as string handling, mathematical computations, input/output processing, memory management, and several other operating system services.
The application programming interface (API) of the C standard library is declared in a number of header files. Each header file contains one or more function declarations, data type definitions, and macros.
The POSIX standard added several nonstandard C headers for Unix-specific functionality.
Unix-like systems typically have a C library in shared library form.The C library is considered part of the operating system on Unix-like systems.
List of C Standard Library Header Files:
Normative Addendum 1(NA1) added three new headers that added support for wide-characters, wide-strings, and international keyboard. The headers <iso646.h>, <wchar.h>, and <wctype.h> were added with NA1.
C99 introduced several new features like several new built-in data types (Boolean, complex), improved compatability with C++ features like one-line comment and inline functions, improved support for IEEE floating point, etc.. The headers <complex.h>, <fenv.h>, <inttypes.h>, <stdbool.h>, <stdint.h>, and <tgmath.h> were added with C99.
C11 is the current for the C. It includes several changes to the C99 language and library specifications, such as: Alignment specification, type-generic expressions, Multi-threading support, Improved Unicode support, Bound checking and Analyzability features, atomic type support,etc..
The C standard library provides macros, type definitions and functions for tasks such as string handling, mathematical computations, input/output processing, memory management, and several other operating system services.
The application programming interface (API) of the C standard library is declared in a number of header files. Each header file contains one or more function declarations, data type definitions, and macros.
The POSIX standard added several nonstandard C headers for Unix-specific functionality.
Unix-like systems typically have a C library in shared library form.The C library is considered part of the operating system on Unix-like systems.
List of C Standard Library Header Files:
Name | From | Description |
---|---|---|
<assert.h> | Contains the assert macro, used to assist with detecting logical errors and other types of bug in debugging versions of a program. | |
<complex.h> | C99 | A set of functions for manipulating complex numbers. |
<ctype.h> | Defines set of functions used to classify characters by their types or to convert between upper and lower case in a way that is independent of the used character set (typically ASCII or one of its extensions, although implementations utilizing EBCDIC are also known). | |
<errno.h> | For testing error codes reported by library functions. | |
<fenv.h> | C99 | Defines a set of functions for controlling floating-point environment. |
<float.h> | Defines macro constants specifying the implementation-specific properties of the floating-point library. | |
<inttypes.h> | C99 | Defines exact width integer types. |
<iso646.h> | NA1 | Defines several macros that implement alternative ways to express several standard tokens. For programming in ISO 646 variant character sets. |
<limits.h> | Defines macro constants specifying the implementation-specific properties of the integer types. | |
<locale.h> | Defines localization functions. | |
<math.h> | Defines common mathematical functions. | |
<setjmp.h> | Declares the macros setjmp and longjmp, which are used for non-local exits. | |
<signal.h> | Defines signal handling functions. | |
<stdalign.h> | C11 | For querying and specifying the alignment of objects. |
<stdarg.h> | For accessing a varying number of arguments passed to functions. | |
<stdatomic.h> | C11 | For atomic operations on data shared between threads. |
<stdbool.h> | C99 | Defines a boolean data type. |
<stddef.h> | Defines several useful types and macros. | |
<stdint.h> | C99 | Defines exact width integer types. |
<stdio.h> | Defines core input and output functions | |
<stdlib.h> | Defines numeric conversion functions, pseudo-random numbers generation functions, memory allocation, process control functions | |
<stdnoreturn.h> | C11 | For specifying non-returning functions. |
<string.h> | Defines string handling functions. | |
<tgmath.h> | C99 | Defines type-generic mathematical functions. |
<threads.h> | C11 | Defines functions for managing multiple Threads as well as mutexes and condition variables. |
<time.h> | Defines date and time handling functions | |
<uchar.h> | C11 | Types and functions for manipulating Unicode characters. |
<wchar.h> | NA1 | Defines wide string handling functions. |
<wctype.h> | NA1 | Defines set of functions used to classify wide characters by their types or to convert between upper and lower case |
Normative Addendum 1(NA1) added three new headers that added support for wide-characters, wide-strings, and international keyboard. The headers <iso646.h>, <wchar.h>, and <wctype.h> were added with NA1.
C99 introduced several new features like several new built-in data types (Boolean, complex), improved compatability with C++ features like one-line comment and inline functions, improved support for IEEE floating point, etc.. The headers <complex.h>, <fenv.h>, <inttypes.h>, <stdbool.h>, <stdint.h>, and <tgmath.h> were added with C99.
C11 is the current for the C. It includes several changes to the C99 language and library specifications, such as: Alignment specification, type-generic expressions, Multi-threading support, Improved Unicode support, Bound checking and Analyzability features, atomic type support,etc..
Related topics:
Memory Management in C | Incomplete Type in C | Lifetime, Scope, Visibility and Linkage in C | Namespace in C | Complex and Abstract Declarations in C | Storage of Data Types in C
List of topics: C Programming
No comments:
Post a Comment