Explain "passing by value", "passing by pointer" and
"passing by reference" ?
Answer Posted / ranjeet garodia
Pass by value - a copy is made
Pass by pointer ( explicit pointer)
example:
void func(int * ptr_sent)
main()
{
int i;
int *p;
p = &i;
func(p);
}
void func(int * ptr_sent)
{
*ptr_sent = *ptr_sent + 2
// adds 2 to the value in location pointed by ptr_sent
}
answers given by yen .. there is one error ... in pass by
reference .. when calling function pass the variable not
the address....fun(i) should be called instead of fun(&i)
Pass by reference (implicit pointer)
example:
void func(int &ref_sent)
main()
{
int i;
func(i); // call by reference
}
void func(int &ref_sent)
{
ref_sent = ref_sent + 2
// adds 2 to the ref_sent
// Please note that you do not need * when using reference
// Any code manipulating reference reflects changes on i
}
Is This Answer Correct ? | 1 Yes | 1 No |
Post New Answer View All Answers
Mention the purpose of istream class?
How a new operator differs from the operator new?
What are default parameters? How are they evaluated in c++ function?
What things would you remember while making an interface?
What causes a runtime error c++?
Where do I find the current c or c++ standard documents?
What do you mean by function overriding & function overloading in c++?
Why can’t you call invariants() as the first line of your constructor?
Evaluate as true or false: !(1 &&0 || !1) a) True b) False c) Invalid statement
What does namespace mean in c++?
what is scupper?
Which software is used to run c++ program?
What does new in c++ do?
What is general form of pure virtual function? Explain?
Which programming language is best?