When our program become so bigger to handle or when some lines are continuously repeating for e.g. If we are designing any software, a same type of calculations is needed repeatedly and we are writing the same line of code multiple times which in turn makes our program bigger, complex and difficult to handle and for detecting the error. To solve all these problems or in other words to make the problem simple, the function is designed.
What is Function?
The function is a group of lines or subprogram to perform a specific task. As earlier explained, when the same type of calculations are repeating continuously, we design a function and give a specific name to it. Whenever it is further required in the program, it will be called by that name and then the code inside that function execute. As we all know, we always write a program inside the main function.
Type of Function
There are two type of functions found in c++
1) Built-In function
2) User-defined function
Built - in Function
As we are including header files at the initial such as math.h or conio.h in which some functions are already defined are known as library functions or built-in function. These functions can be invoked directly without writing any code.
Library functions, getch(), clrscr() are the examples of built-in function.
C++ permits users to define their own functions that are known as a user-defined function.
For e.g. Main function
When the program executes, it starts with the main function. The main function is a user-defined function; users are needed to code in it. The programs can be divided into subpart.
The program starts with the main function, then it will go to F1(), Since F1(), F2() are user-defined functions, it will understand that this function is called from another location. The control of execution will transfer to the exact location of the function and it executes and then again the control will be transferred to the F1(), now again the process will continue for F2() also and after execution of code under F2(), the control will go to exit through curly braces.
The process of defining a user-defined function
This involves three steps to make user-defined function i.e.
1) Function prototype
2) Function definition
3) Function call
In C++, when there you want to use the user-defined function, there is a need to give function prototype such as type, return values, function name, parameters etc before it usage.
Function prototype includes four types i.e.
1) Function type: This is also known as the return values may be int, float etc. It specifies the type of function when it is called in a program.
2) Function name
3) Specifies the particular name of the function
4) Parameter list (Type of the arguments or void)
Type function-name(parameter list);
int sub (int,int);
int sub(int,int); // function prototype
Sub(4,2); // function call
z=sub(x,y); // function call
Function definition can be divided into two parts i.e. function header and function body. The header is similar to function call instead of semicolon used after parameter list.
In function header, there are three parts i.e. type, name of the function and parameter. In function body, the local variables, statements or return statement can be used according to the requirement.
Type function name (parameter list)
inside body, local variable declaration, statements or return statements can be used.
int sub (int,int)
int sub(int x,int y)// function definition
Lets understand with a program of user defined function in c++
using namespace std;
void Y(int &P, int &Q)
P = P + Q;
Q = P- Q;
P = P - Q;
int p = 14, q = 15;
cout << p << ", " << q;