The Standard C Library [C++ Reference]
Keywords: c,start
Date: 2008-11-19T04:20:44-0800

## The Standard C Library

C++ programmers have access to a variety of functions from the standard C libraries, as defined in ISO/IEC 9899:1990 (known as C90). All of the functions in these libraries are defined in the std namespace.

### C Library Functions

The following is a list of standard C library functions, grouped roughly by functionality:

- Standard C I/O
- Standard C String & Character
- Standard C Math
- Standard C Date & Time
- Standard C Memory
- Other standard C functions

Alternatively, there is a list of all standard C library functions.

### Standard C Header Files

The functions above are defined in the following 18 header files:

- <cassert>
- <ciso646>
- <csetjmp>
- <cstdio>
- <ctime>
- <cctype>
- <climits>
- <csignal>
- <cstdlib>
- <cwchar>
- <cerrno>
- <clocale>
- <cstdarg>
- <cstring>
- <cwctype>
- <cfloat>
- <cmath>
- <cstddef>

When including header files for the standard C libraries, it is preferable to use the `cfile` notation instead of the `file.h` notation. For example, the `stdio.h` header file should be included using this command:

      #include <cstdio>

The `file.h` notation works, but it is mainly meant for backwards compatibility. The difference between the `cfile` and `file.h` notation is that functions included via the `file.h` notation will appear in the global namespace instead of the std namespace.

See also: The 2005 C99 working paper from the Approved Standards of working group 14.