C89 Draft: 4.13 FUTURE LIBRARY DIRECTIONS
The following names are grouped under individual headers for convenience.
All external names described below are reserved no matter what headers are included by the program.
4.13.1 Errors <errno.h>
Macros that begin with E and a digit or E and an upper-case letter (followed by any combination of digits, letters and underscore) may be added to the declarations in the <errno.h> header.
4.13.2 Character handling <ctype.h>
Function names that begin with either is or to , and a lower-case letter (followed by any combination of digits, letters and underscore) may be added to the declarations in the <ctype.h> header.
4.13.3 Localization <locale.h>
Macros that begin with LC_ and an upper-case letter (followed by any combination of digits, letters and underscore) may be added to the definitions in the <locale.h> header.
4.13.4 Mathematics <math.h>
The names of all existing functions declared in the <math.h> header, suffixed with f or l , are reserved respectively for corresponding functions with float and long double arguments and return values.
4.13.5 Signal handling <signal.h>
Macros that begin with either SIG and an upper-case letter or SIG_ and an upper-case letter (followed by any combination of digits, letters and underscore) may be added to the definitions in the <signal.h> header.
4.13.6 Input/output <stdio.h>
Lower-case letters may be added to the conversion specifiers in fprintf and fscanf . Other characters may be used in extensions.
4.13.7 General utilities <stdlib.h>
Function names that begin with str and a lower-case letter (followed by any combination of digits, letters and underscore) may be added to the declarations in the <stdlib.h> header.
4.13.8 String handling <string.h>
Function names that begin with str , mem , or wcs and a lower-case letter (followed by any combination of digits, letters and underscore) may be added to the declarations in the <string.h> header.