C++ Function Call by Value
C++ Function Call by Value
The call by value method of passing arguments to a function copies the actual value of an
argument into the formal parameter of the function. In this case, changes made to the parameter
inside the function have no effect on the argument.
By default, C++ uses call by value to pass arguments. In general, this means that code within a
function cannot alter the arguments used to call the function. Consider the function swap()
definition as follows.
int temp;
x = y; /* put y into x */
return;
Now, let us call the function swap() by passing actual values as in the following example −
#include <iostream>
// function declaration
int main () {
int a = 100;
int b = 200;
swap(a, b);
https://www.tutorialspoint.com/cplusplus/cpp_function_call_by_value.htm 1/2
11/13/21, 4:54 PM C++ function call by value
return 0;
When the above code is put together in a file, compiled and executed, it produces the following
result −
Which shows that there is no change in the values though they had been changed inside the
function.
https://www.tutorialspoint.com/cplusplus/cpp_function_call_by_value.htm 2/2