A function is a single comprehensive unit (self-contained block) containing a block of code that performs a specific task. In this tutorial, you will learn about c programming user defined functions.
In C programming user can write their own function for doing a specific task in the program. Such type of functions in C are called user-defined functions.
Let us see how to write C programming user defined functions.
#include <stdio.h> int square(int a); //function prototype int main() { int x, sqr; printf("Enter number to calculate square: "); scanf("%d", &x); sqr = square (x); //function call printf("Square = %d", sqr); return 0; } //end main int square (int a) //function definition { int s; s = a*a; return s; //returns the square value s } //end function square
There are multiple parts of user defined function that must be established in order to make use of such function.
Here, function square
is called in main
sqr = square (x); //function call
[adsense1]
int square(int a); //function prototype
Here, int
before function name indicates that this function returns integer value to the caller while int
inside parentheses indicates that this function will recieve an integer value from caller.
A function definition provides the actual body of the function.
return_value_type function_name (parameter_list) { // body of the function }
It consists of a function header and a function body. The function_name
is an identifier.
The return_value_type
is the data type of value which will be returned to a caller.
Some functions performs the desired task without returning a value which is indicated by void
as a return_value_type
.
All definitions and statements are written inside the body of the function.
Return statement returns the value and transfer control to the caller.
return s; //returns the square value s
There are three ways to return control.
return;
The above return
statement does not return value to the caller.
return expression;
The above return
statement returns the value of expression to the caller.
return 0;
The above return
statement indicate whether the program executed correctly.