Skip to main content

Calling Method Of Function In C Language

Calling Method In C Language:-
As We Already See That Any Function has Some Arguments Or void
If We Use Variable As Argument Then It Is Called FORMAL PARAMETERS.
*Formal parameters behave like other local variables inside the function
 and are created upon entry into the function and destroyed upon exit.
In C Language there are two ways in which arguments can be passed
to a function:-
1)Call by value:-      (using value)
2)Call by reference:-  (using pointer)
Now We Will See One By One These Arguments By Taking Suitable Example:
1)Call by value:- 
*In This Method actual value copies to formal parameter:
*Due To That changes made to the parameter inside the function
 have no effect on the argument.
This will cleared by following example:-
Example Program:-
//in this program we swap two variable using third variable:
#include <stdio.h>
/* function declaration */
void swapping(int a, int b);
int main ()
{
/* local variable definition */
int x = 69;
int y = 93;
printf("Before swapping the value of x= %d\n",x);
printf("Before swapping the value of y= %d\n",y);
/* calling a function to swapping the values */
swapping(x, y);
return 0;
}
/* function definition to swap the values */
void swapping(int a, int b)
{
int temp;     //a local variable for swapping
temp = a;    /* save the value of x */
a = b;      /* put a into b */          
b = temp;   /* put temp into y */
printf("After swapping the value of x= %d\n",a);
printf("After swapping the value of y= %d\n",b);
}
The Output Of This Program Will Be:-
Before swapping the value of x= 69
Before swapping the value of y= 93
After swapping the value of x= 93
After swapping the value of y= 69
2)Call by reference:-
*In This Method address of actual value copies to formal parameter.
*the address is used to access the actual argument.for this purpous
 we use pointers.
*the changes made to the parameter affect the passed argument.
This will cleared by following example:-
Example Program:-
//in this program we swap two variable using pointer:
#include <stdio.h>
void swapping(int *a, int *b);   /* function declaration */
int main ()
{                                              
int x = 66;     //  local variable definition 
int y = 59;
printf("Before swapping the value of x= %d\n",x);
printf("Before swapping the value of y= %d\n",y);
swapping(&x, &y);  // calling a function to swap the values.
               //("&x")indicates pointer to x i.e. address of variable x 
return 0;      //("&y")indicates pointer to y i.e. address of variable y
}
/* function definition to swap the values */
void swapping(int *a, int *b)
{
int temp;
temp = *a; /* save the value at address a */
*a = *b;   /* put b into a */
*b = temp; /* put temp into y */ 
printf("After swapping the value of x= %d\n",*a);
printf("After swapping the value of y= %d\n",*b);         
}
The Output Of This Program:-
Before swapping the value of x= 66
Before swapping the value of y= 59
After swapping the value of x= 59
After swapping the value of y= 66
NOTE:-
*By default, C uses call by value to pass arguments.
*it means the code within a function cannot alter the arguments used to
 call the function.                          
                                                 -:PLEASE SHARE THIS:-    
                                                    -:THANKS A LOT:-

Comments

Popular posts from this blog

Types Of Array In C language

Two Dimensional Array :- * It Is The Combination Of Two One Dimensional Array * It Is Used To Implement Matrix Operation . *A two-dimensional array can be considered as a table which  will have 'a' number of rows and'b'number of columns. Declaration Of Two Dimensional Array:-   data_type Array_name [size of row][size of column]; For Example:- int matrix[3][4]; in above example we will store a matrix of 3*3. This Will Cleared From Following Figure:- *It can be represented a[i][j].where i and j represents  row and column respectively. Initialization Of Two Dimensional Array:- let us consider an array "float a[3][3]"then it will be initialized float a[3][3]={                {1.2,2.3,4.3} //initializers for row indexed by 0                {2.1,2.2,2.3} //initializers for row indexed by 1                {3.1,3.4,3.6} //initializers for row indexed by 2 ...

Introduction To "C" Language

Basic Introduction:- Dennis M. Ritchie to develop the UNIX operating system at Bell Labs. C was originally first implemented on the DEC PDP-11 computer in 1972. In 1978, Brian Kernighan and Dennis Ritchie produced the first publicly available description of C, now known as the K&R standard. The UNIX operating system, the C compiler, and essentially all UNIX application programs have been written in C. C has now become a widely used professional language for various reasons: 1. Easy to learn 2. Structured language 3. It produces efficient programs 4. It can handle low-level activities 5. It can be compiled on a variety of computer platforms IMPORTENT FACTS ABOUT C:- *) C was invented to write an operating system called UNIX. a) C is a successor of B language which was introduced around the early    1970s. b) The language was formalized in 1988 by the American National Standard    Institute (ANSI). c) The UNIX OS was totally written in C. d) Today C is the most wid...