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
Are strings immutable in c++?
What is runtime polymorphism in c++?
Does c++ have arraylist?
What is c++ library?
what is a class? Explain with an example.
What methods can be overridden in java?
Give example of a pure virtual function in c++?
Is it legal in c++ to overload operator++ so that it decrements a value in your class?
What is function overloading c++?
What is ios :: in in c++?
Define upcasting.
Which bit wise operator is suitable for checking whether a particular bit is on or off?
In int main(int argc, char *argv[]) what is argv[0] a) The first argument passed into the program b) The program name c) You can't define main like that
Explain terminate() function?
What are the two shift operators and what are their functions?