Header files in C/C++ with Examples - GeeksforGeeks

01 Jul, 2021
 C++ offers its users a variety of functions, one of which is included in header files. In C++, all the header files may or may not end with the “.h” extension but in C, all the header files must necessarily end with the “.h” extension. A header file contains:  
Function definitionsData type definitionsMacros
Function definitions
Data type definitions
Macros
It offer above features by importing them into the program with the help of a preprocessor directive “#include”. These preprocessor directives are used for instructing compiler that these files need to be processed before compilation. In C program should necessarily contain the header file which stands for standard input and output used to take input with the help of scanf() and printf() function respectively. In C++ program has the header file which stands for input and output stream used to take input with the help of “cin” and “cout” respectively. There are of 2 types of header file:  
Pre-existing header files: Files which are already available in C/C++ compiler we just need to import them.User-defined header files: These files are defined by the user and can be imported using “#include”.
Pre-existing header files: Files which are already available in C/C++ compiler we just need to import them.
User-defined header files: These files are defined by the user and can be imported using “#include”.
Syntax:  
#include <filename.h>
or
#include "filename.h"
We can include header files in our program by using one of the above two syntax whether it is pre-defined or user-defined header file. The “#include” preprocessor is responsible for directing the compiler that the header file needs to be processed before compilation and includes all the necessary data type and function definitions.Note: We can’t include the same header file twice in any program.Create your own Header File: Instead of writing a large and complex code, we can create your own header files and include them in our program to use it whenever we want. It enhances code functionality and readability. Below are the steps to create our own header file:  
Write your own C/C++ code and save that file with “.h” extension. Below is the illustration of header file:  
CPP
// Function to find the sum of two// numbers passedint sumOfTwoNumbers(int a, int b){    return (a + b);}
Include your header file with “#include” in your C/C++ program as shown below:  
CPP
// C++ program to find the sum of two// numbers using function declared in// header file#include "iostream" // Including header file#include "sum.h"using namespace std; // Driver Codeint main(){     // Given two numbers    int a = 13, b = 22;     // Function declared in header    // file to find the sum    cout << "Sum is: "         << sumOfTwoNumbers(a, b)         << endl;}
Below is the output of the above program:  
Below are some inbuilt header files in C/C++:  
#include<stdio.h>: It is used to perform input and output operations using functions scanf() and printf().#include<iostream>: It is used as a stream of Input and Output using cin and cout.#include<string.h>: It is used to perform various functionalities related to string manipulation like strlen(), strcmp(), strcpy(), size(), etc.#include<math.h>: It is used to perform mathematical operations like sqrt(), log2(), pow(), etc.#include<iomanip.h>: It is used to access set() and setprecision() function to limit the decimal places in variables.#include<signal.h>: It is used to perform signal handling functions like signal() and raise().#include<stdarg.h>:It is used to perform standard argument functions like va_start() and va_arg(). It is also used to indicate start of the variable-length argument list and to fetch the arguments from the variable-length argument list in the program respectively.#include<errno.h>: It is used to perform error handling operations like errno(), strerror(), perror(), etc.#include<fstream.h>: It is used to control the data to read from a file as an input and data to write into the file as an output.#include<time.h>: It is used to perform functions related to date() and time() like setdate() and getdate(). It is also used to modify the system date and get the CPU time respectively.
#include<stdio.h>: It is used to perform input and output operations using functions scanf() and printf().
#include<iostream>: It is used as a stream of Input and Output using cin and cout.
#include<string.h>: It is used to perform various functionalities related to string manipulation like strlen(), strcmp(), strcpy(), size(), etc.
#include<math.h>: It is used to perform mathematical operations like sqrt(), log2(), pow(), etc.
#include<iomanip.h>: It is used to access set() and setprecision() function to limit the decimal places in variables.
#include<signal.h>: It is used to perform signal handling functions like signal() and raise().
#include<stdarg.h>:It is used to perform standard argument functions like va_start() and va_arg(). It is also used to indicate start of the variable-length argument list and to fetch the arguments from the variable-length argument list in the program respectively.
#include<errno.h>: It is used to perform error handling operations like errno(), strerror(), perror(), etc.
#include<fstream.h>: It is used to control the data to read from a file as an input and data to write into the file as an output.
#include<time.h>: It is used to perform functions related to date() and time() like setdate() and getdate(). It is also used to modify the system date and get the CPU time respectively.
 
anshitaagarwal
abhishek0719kadiyan
C-Library
CPP-Library
C Language
C++
CPP
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Comments
Old Comments
Multidimensional Arrays in C / C++
rand() and srand() in C/C++
Command line arguments in C/C++
INT_MAX and INT_MIN in C/C++ and Applications
Enumeration (or enum) in C
Vector in C++ STL
Initialize a vector in C++ (6 different ways)
Inheritance in C++
Iterators in C++ STL
Multidimensional Arrays in C / C++