Header Files in C language with Example

The C header files provides programmers with a variety of entertaining and practical features and functionalities. The C programming language is almost universally used in the creation of software, games, and other projects.

C syntax is relatively simple to comprehend, and it’s also simple to use. All C programs depend on header, which are crucial. Without supplying a header file, no program may be compiled or run.

As with the inclusion of the stdio.h file that comes with your compiler, you ask to use a by including it with the preprocessing directive #include.

You must test the C Language code provided in this lesson in your code editor to validate it. However, if you prefer to execute this code online, we also provide a free C Online Compiler for testing your C Language code.

What is a Header File in C?

The term “header file” refers to a files with the extension “.h” that contains shared C function declarations and macro definitions. There are two different kinds of header files: those created by the programmer and those provided by the compiler.

Types of Header Files C

There are two varieties of header files, including:-

  • Standard Library Header Files: In C, these are already-existing header.
  • User-Defined Header Files: Header files that have been defined by the user fall under this category. A header file is defined using the #define directive.

Syntax of Header File for C

You can include a header file in your program in two different methods.

  • #include<headerFilename>: Angle brackets are used to encapsulate the header file. The most typical method of defining a header file is this one.
    • Example: #include<time.h>
  • #include“headerFilename”: This is encased in double quotation marks. You can define user-defined header files in this manner.
    • Example: #include”stdlib.h”

NOTE: A header file cannot be included twice in the same program.

Include Syntax in C Language

The preprocessing command #include is used to include both the user and system header files. It comes in the two forms listed below:

#include <file>

System header files are formatted in this manner. In a normal list of system folders, it looks for a file with the name “file.” When producing your source code, you can prepend folders to this list with the -I option.

#include 'file'

For header files in your own programs, use this form. It looks in the directory where the current file is located for a file with the name “file.” When producing your source code, you can prepend folders to this list with the -I option.

Working of C header files:

A header file can be included in the program code with the help of the #include preprocessor directive. The preprocessor directive instructs the compiler to process the header file before compilation.

It includes all crucial data type definitions, macro definitions, and function declarations.

Include Operation in C

When a source file contains the #include directive, the C preprocessor is instructed to scan the specified file as input before moving on to the remaining portions of the source file.

The output from the preprocessor includes the output that has previously been produced, the output from the included file, the output from the text following the #include directive, and finally the output that is generated in the following order.

As an illustration, assuming your header file is named header.h as follows:

char *example (void);

The tutorial.c program, which utilizes this headers file, is shown below.

int x;
#include "header.h"
int main (void) {
   puts (example ());

The token stream that the compiler sees is the same as if tutorial.c were read.

int x;
char *tutorial (void);
int main (void) {
   puts (tutorial ());

How to create your own header file in C?

In addition to the pre-existing header files C, you may also make your own. You can avoid writing lengthy, complex codes in your software with the aid of header files. Additionally, it improves the computer code’s usefulness and readability.

Let’s look at a step-by-step example of making your own header file.

  • Step 1: In the file with the.h extension, write your own code. because you’re making a header file that your computer code will need. Name the below code as tutorial.h.

    int tutorial(int number)
    int count, tutorial=1;
    for(count=1; count<=number; count++)
    return tutorial;

  • Step 2: Your program’s source code should include the tutorial.h header file. There are two ways to do this:


  • Step 3: then run the computer code after compilation.

    int main()
    printf(“C programming Tutorial: Create your own header file!\n”);
    int x=7;
    printf(“The factorial of %d is: %d!”,x,tutorial(7))
    return 0;

  • Step 4: Output of the program

    C programming Tutorial: Create your own header file!
    The factorial of 7 is: 5,040!

Different C header file

By defining header files, these common C library functions can be used. Different header files include various actions and functionalities.

The list of C header files is shown below.

Header FileWhat it does
stdio.hprimarily utilized for input and output activities such as print(), scanf ().
string.hprimarily used for string manipulation operations like strlen() and strcmp().
conio.hYou can run console input and output operations using this header file.
stdlib.hprimarily used for common utility operations like malloc() and calloc().
math.hSqrt(), pow(), and other math functions are primarily used.
ctype.hused to carry out character-type operations such as isdigit() and isalpha().
time.hused for date- and time-related tasks.
assert.hused to test program assumptions and print a message if the assumption is incorrect using functions like assert() and others.
locale.hprimarily used for localization tasks like setlocale() and similar operations.
signal.hprimarily utilized for signal handling operations like signal(), raise(), etc.
setjmp.hused to carry out jump operations.
stdarg.hused to run common argument methods like va start() and others.
errno.hfor carrying out error-handling activities and for errno() error-indicating functions.


We learned what C header files are in this course and how to use them in your program code. We spoke about the several C types. We also discussed how header files function.

Then we spoke about making your own header files. We talked about how to create in c. You cannot run or build your application code without a header file. The header file stdio.h must be included in every program written in C.

About Next Tutorial

In the next following post, I’ll create a Type Casting  in C and try to explain its many components in full details. I hope you enjoy this post on Header Files in C, in which I attempt to illustrate the language’s core grammar.

Leave a Comment