Welcome to the third part of the Gentle Introduction to C series. As said before this series aims to provide you with a brief introduction to C language.

In this part we are going to look at one of the most important function in C, the main() function.


The main() function, as many like to say, is the entry point of a C program. It is the function that is executed at the beginning of any program. Intuitively you can also understand the main() function as an user-defined function.

Note : Technically the main function is not the actual entry point as the entry point is compiler depended.

At the basic level, the main() function is similar to a normal function, having its own return value, parameters and definition. But unlike any other function, the main function is called by the operating system ( all other functions are actually called by the main function or any other function). This happens primarily because whenever a program runs, the operating system has to pass the control of the computer over to the program. The main() function is just what the operating system looks for in a C program to pass its control to. So technically if any parameter that’s needed to be passed on to the main() function must be passed during runtime. Also as the main() function is the part that receives the operating system’s control it is required to be present in the program (some exceptions do occur).

Interesting Fact : Despite its importance, main is not a keyword in C.

Example -
     Code :  

 // Defining a main function with int return type    
 int main() {        
    printf("Hello you are in the main function");        
    return 0;     

    Output :

Hello you are in the main function

Lastly main() function is an important component of almost every C program and writing a good main() function is a very crucial and important step.

Thanks for reading.