C Books Guide and List
C++ Books Guide and List
Best Java Books

3,749 questions

4,049 answers

114 comments

10,705 users

What is pass by value in functions in C?

0 votes
1,364 views
asked Jan 8, 2014 by keem Expert (13,240 points)

1 Answer

0 votes
Pass by Value: In this method, the value of each of the actual arguments in the calling function is copied into corresponding formal arguments of the called function. In pass by value, the changes made to formal  arguments in the called function have no effect on the values of actual arguments in the calling function.

Example:

#include <stdio.h>

void swap(int x, int y) {

int t;

t = x;

x = y;

y = t;

} int main() {

int m = 10, n = 20;

printf("Before executing swap m=%d n=%d\n", m, n);

swap(m, n);

printf("After executing swap m=%d n=%d\n", m, n);

return 0;

Output:

Before executing swap m=10 n=20

After executing swap m=10 n=20

Explanation:

In the main function, value of variables m, n are not changed though they are passed to function 'swap'. Swap function has a copy of m, n and hence it can not manipulate the actual value of arguments passed to it.
answered Jan 8, 2014 by rajesh Guru (39,140 points)

Related questions

0 votes
1 answer 1,433 views
1,433 views asked Jan 8, 2014 by keem Expert (13,240 points)
0 votes
1 answer 36 views
0 votes
1 answer 3,075 views
+1 vote
3 answers 3,853 views
0 votes
1 answer 4,206 views
...