C++ Function (With Examples)
C++ Function (With Examples)
C++ Function (With Examples)
In this tutorial, we will learn about the C++ function and function expressions with the help
of examples.
Suppose we need to create a program to create a circle and color it. We can create two
functions to solve this problem:
Dividing a complex problem into smaller chunks makes our program easy to understand
and reusable.
A user-defined function groups code to perform a specific task and that group of code is
given a name (identifier).
When the function is invoked from any part of the program, it all executes the codes
defined in the body of the function.
C++ Function Declaration
// function body
// function declaration
void greet() {
Here,
Note: We will learn about returnType and parameters later in this tutorial.
Calling a Function
In the above program, we have declared a function named greet() . To use the greet()
// calling a function
greet();
// declaring a function
void greet() {
int main() {
greet();
return 0;
Output
Hello there!
Function Parameters
Ad
We pass a value to the function parameter while calling the function.
int main() {
int n = 7;
printNum(n);
return 0;
#include <iostream>
// display a number
int main() {
int num1 = 5;
displayNum(num1, num2);
return 0;
Output
In the above program, we have used a function that has one int parameter and one
double parameter.
We then pass num1 and num2 as arguments. These values are stored by the function
parameters n1 and n2 respectively.
C++ function with parameters
Note: The type of the arguments passed while calling the function must match with
the corresponding parameters defined in the function declaration.
Return Statement
In the above programs, we have used void in the function declaration. For example,
void displayNumber() {
// code
It's also possible to return a value from a function. For this, we need to specify the
returnType of the function during function declaration.
Then, the return statement can be used to return a value from a function.
For example,
int add (int a, int b) {
return (a + b);
Here, we have the data type int instead of void . This means that the function returns
an int value.
The code return (a + b); returns the sum of the two parameters as the function value.
The return statement denotes that the function has ended. Any code after return inside
the function is not executed.
#include <iostream>
// declaring a function
return (a + b);
int main() {
int sum;
return 0;
}
Output
100 + 78 = 178
In the above program, the add() function is used to find the sum of two numbers.
We pass two int literals 100 and 78 while calling the function.
We store the returned value of the function in the variable sum , and then we print it.
Notice that sum is a variable of int type. This is because the return value of add() is of
int type.
Function Prototype
In C++, the code of function declaration should be before the function call. However, if we
want to define a function after the function call, we need to use the function prototype. For
example,
// function prototype
int main() {
add(5, 3);
return 0;
// function definition
This provides the compiler with information about the function name and its parameters.
That's why we can use the code to call a function before the function has been defined.
#include <iostream>
// function prototype
int main() {
int sum;
return 0;
// function definition
return (a + b);
Output
100 + 78 = 178
The above program is nearly identical to Example 3. The only difference is that here, the
function is defined after the function call.
Functions make the program easier as each small task is divided into a function.
Programmers can use library functions by invoking the functions directly; they don't need
to write the functions themselves.
Some common library functions in C++ are sqrt() , abs() , isdigit() , etc.
In order to use library functions, we usually need to include the header file in which these
library functions are defined.
For instance, in order to use mathematical functions such as sqrt() and abs() , we need
to include the header file cmath .
#include <cmath>
int main() {
number = 25.0;
squareRoot = sqrt(number);
cout << "Square root of " << number << " = " << squareRoot;
return 0;
Output
Square root of 25 = 5
In this program, the sqrt() library function is used to calculate the square root of a
number.
The function declaration of sqrt() is defined in the cmath header file. That's why we need
to use the code #include <cmath> to use the sqrt() function.