Developer's Topics
Chapter 2, Complying with standard C

Names reserved for expansion

Names reserved for expansion

In addition to all the names explicitly reserved, the Standard also reserves (for implementations and future standards) names matching certain patterns:

 errno.h    E[0-9A-Z]. 
 ctype.h    (to|is)[a-z]. 
 locale.h   LC_[A-Z]. 
 math.h     current function names[fl]
 signal.h   (SIG|SIG_)[A-Z]. 
 stdlib.h   str[a-z]. 
 string.h   (str|mem|wcs)[a-z]. 
In the above lists, names that begin with a capital letter are macros and are reserved only when the associated header is included. The rest of the names designate functions and therefore cannot be used to name any global objects or functions.