Programming
What is the difference between a value and reference parameter?

Question Description

I don’t understand this Computer Science question and need help to study.

  • What is the difference between a value and reference parameter?

Student has agreed that all tutoring, explanations, and answers provided by the tutor will be used to help in the learning process and in accordance with Studypool's honor code & terms of service.

Final Answer

call by value: send the  function a copy of argument's value .

e.g

int foo( int a)

{

a = a+1; return a;

}

// basically change in value does not reflect in call by value

//

int main()
{
   int xx = 0;
   cout << f(xx) << ′\n′;   //print on screen 1
   cout << xx << ′\n′;    // print on screen  0; f() doesn’t change xx
   int yy = 7;
   cout << f(yy) << ′\n′; // print on screen 8;  f() doesn’t change yy
   cout << yy << ′\n′;    // print on screen 7
}

// we can see here that value of xx does not change

if we pass the value to same program by reference then value of x will change

int f(int& a) {

a = a+1; return a;

}

int main()
{
   int xx = 0;
   cout << f(xx) << ′\n′;   //print on screen 1
   cout << xx << ′\n′;    // print on screen  1; f() does change xx
   int yy = 7;
   cout << f(yy) << ′\n′; // print on screen 8;  f() doesn change yy
   cout << yy << ′\n′;    // print on screen 8
}

In call by reference value of variable also change mean change in function also reflect in main function.


aazam (267)
UC Berkeley

Anonymous
Return customer, been using sp for a good two years now.

Anonymous
Thanks as always for the good work!

Anonymous
Excellent job

Studypool
4.7
Trustpilot
4.5
Sitejabber
4.4