cpp.info: Header Files

Go forward to Macros
Go backward to Overview
Go up to Top
Go to the top op cpp

Header Files

   A header file is a file containing C declarations and macro
definitions (*note Macros::) to be shared between several source files.
You request the use of a header file in your program by "including"
it, with the C preprocessing directive `#include'.
   Header files serve two purposes.
   * System header files declare the interfaces to parts of the
     operating system.  You include them in your program to supply the
     definitions and declarations you need to invoke system calls and
     libraries.
   * Your own header files contain declarations for interfaces between
     the source files of your program.  Each time you have a group of
     related declarations and macro definitions all or most of which
     are needed in several different source files, it is a good idea to
     create a header file for them.
   Including a header file produces the same results as copying the
header file into each source file that needs it.  Such copying would be
time-consuming and error-prone.  With a header file, the related
declarations appear in only one place.  If they need to be changed, they
can be changed in one place, and programs that include the header file
will automatically use the new version when next recompiled.  The header
file eliminates the labor of finding and changing all the copies as well
as the risk that a failure to find one copy will result in
inconsistencies within a program.
   In C, the usual convention is to give header files names that end
with `.h'.  It is most portable to use only letters, digits, dashes, and
underscores in header file names, and at most one dot.