Follow Our FB Page << CircleMedia.in >> for Daily Laughter. We Post Funny, Viral, Comedy Videos, Memes, Vines...

Difference Between Call By Value and Call By Reference?

Answers were Sorted based on User's Feedback

Difference Between Call By Value and Call By Reference?..

In call by value, a copy of value known as(actual argument)
is passed to the function known as(formal argument). Both
values are stored at different locations and scope. The
changes made in a copy(formal argument) does not affect the
original value(actual argument).

In call by reference, a reference/address of variable known
as(actual argument) is passed to the function known
as(formal argument) which is stored in a
pointer/ref.variable. The changes made in a function
(through pointer/ref. variable) affect the original
value(actual argument).

 Is This Answer Correct ? 15 Yes 5 No

Difference Between Call By Value and Call By Reference?..

For instance consider program1

main()
{
int x=50, y=70;
interchange(x,y);
printf(“x=%d y=%d”,x,y);
}

interchange(x1,y1)
int x1,y1;
{
int z1;
z1=x1;
x1=y1;
y1=z1;
printf(“x1=%d y1=%d”,x1,y1);
}

Here the value to function interchange is passed by value.

Consider program2

main()
{
int x=50, y=70;
interchange(&x,&y);
printf(“x=%d y=%d”,x,y);
}

interchange(x1,y1)
int *x1,*y1;
{
int z1;
z1=*x1;
*x1=*y1;
*y1=z1;
printf(“*x=%d *y=%d”,x1,y1);
}

Here the function is called by reference. In other words
address is passed by using symbol & and the value is
accessed by using symbol *.

The main difference between them can be seen by analyzing
the output of program1 and program2.

The output of program1 that is call by value is
x1=70 y1=50
x=50 y=70

But the output of program2 that is call by reference is

*x=70 *y=50
x=70 y=50

This is because in case of call by value the value is passed
to function named as interchange and there the value got
interchanged and got printed as

x1=70 y1=50

and again since no values are returned back and therefore
original values of x and y as in main function namely

x=50 y=70 got printed.

But in case of call by reference address of the variable got
passed and therefore what ever changes that happened in
function interchange got reflected in the address location
and therefore the got reflected in original function call in
main also without explicit return value. So value got
printed as *x=70 *y=50 and x=70 y=50

 Is This Answer Correct ? 8 Yes 1 No

Difference Between Call By Value and Call By Reference?..

It is not difference
but good thing..Both tha
techniques r good ..if we want
changes then use call by refernce
otherwise use call by value

 Is This Answer Correct ? 10 Yes 5 No

Difference Between Call By Value and Call By Reference?..

The call by value system copies the actual parameters to
actual parameters and then uses them i.e. the function
creates its own copy of values, any change in
these values will not be reflected
in the original values.
The call by reference system refers the actual parameters
i.e. these doesn’t creates a copy of original parameters,
any change in these parameters will be reflected back in
original parameters.

 Is This Answer Correct ? 7 Yes 2 No

Difference Between Call By Value and Call By Reference?..

In call by value:-
since new location is created, this method is slow.
In call by reference:-
since the existing memory location is used through its

 Is This Answer Correct ? 5 Yes 1 No

Difference Between Call By Value and Call By Reference?..

call by value:-value of the actual argument passed to the
formal arguments.
call by reference:-address of the actual arguments passed
to the fomal arguments.

 Is This Answer Correct ? 4 Yes 1 No

Difference Between Call By Value and Call By Reference?..

call by value: copies the value of argument into the formal
parameter.Any changes made in the parameter does not affect
the argument .

call by reference : copies the address of argument into the
formal parameter . The address will access the actual argument
used in the call . so any changes made in the parameter will effect the argument

 Is This Answer Correct ? 4 Yes 2 No

Difference Between Call By Value and Call By Reference?..

Mostly  call by value and call by reference is differ  from
copy and modify process..
Copy:
Call by value:
It take difference memory locations  for variables.Duplicate copy of the original parameter is passed.
Call by reference:
It takes Same memoy locations for  variables.Actual copy of the original parameter is passed.
Modify:
Call by value:
No affect on original parameter after modifying the parameter in functions.
Call by reference:
original parameter can be affect afetr modifying the parameter in function..

 Is This Answer Correct ? 2 Yes 0 No

Difference Between Call By Value and Call By Reference?..

call by value-
If we call a function in C  by passing values of variables as the parameters/arguments to the function then such type of function call is known as Call by value.

call by reference-A function by passing addresses of variables as the parameters to the function is known as Call by Reference.

 Is This Answer Correct ? 2 Yes 0 No

Difference Between Call By Value and Call By Reference?..

In call By Value it create different memory for local
variable and actual called Variable. so changes does not
affect to the actual variable.

Call By Reference:
In call By Reference Compiler create same memory location
for the local variable and actual called variable so changes
affect to the actual variable and modify the value of actual
called Variable.

 Is This Answer Correct ? 1 Yes 0 No

More SAP ABAP Interview Questions

What is PAKEY structure, PSHD1 structure and what type of fields it contains

How will you process errors in session method?

Explain the types of bdc's?

What are pool tables?

How to transfer data into line items using batch input session method? : abap bdc

What is performance tuning?

Explain read dataset in sap abap?

Setting up a BDC program where you find information from?

How to debug a smart form?

types of windows in smartforms?difference between them?

What does the insert statement in extract datasets do? : abap modularization

Categories
• SAP Basis (1260)
• SAP ABAP (3937)
• SAPScript (236)
• SAP SD (Sales & Distribution) (2695)
• SAP MM (Material Management) (902)
• SAP QM (Quality Management) (99)
• SAP PP (Production Planning) (523)
• SAP PM (Plant Maintenance) (252)
• SAP PS (Project Systems) (138)
• SAP FI-CO (Financial Accounting & Controlling) (2753)
• SAP HR (Human Resource Management) (1179)
• SAP CRM (Customer Relationship Management) (432)
• SAP SRM (Supplier Relationship Management) (132)
• SAP APO (Advanced Planner Optimizer) (90)
• SAP BW (Business Warehouse) (896)
• SAP Security (592)
• SAP Interfaces (74)
• SAP Netweaver (282)
• SAP ALE IDocs (162)
• SAP BO BOBJ (Business Objects) (388)
• SAP CPS (Central Process Scheduling) (14)
• SAP GTS (Global Trade Services) (21)
• SAP Hybris (132)
• SAP HANA (700)
• SAP PI (Process Integration) (113)
• SAP PO (Process Orchestration) (0)
• SAP BI (Business Intelligence) (174)
• SAP BPC (Business Planning and Consolidation) (38)
• SAP BODS (Business Objects Data Services) (49)
• SAP BODI (Business Objects Data Integrator) (0)
• SAP Ariba (8)
• SAP Fiori (45)
• SAP EWM (Extended Warehouse Management) (58)
• Sap R/3 (150)
• SAP FSCM Financial Supply Chain Management (101)
• SAP WM (Warehouse Management) (31)
• SAP GRC (Governance Risk and Compliance) (63)
• SAP MDM (Master Data Management) (0)
• SAP MRS (Multi Resource Scheduling) (0)
• SAP ESS MSS (Employee Manager Self Service) (13)
• SAP CS (Customer Service) (0)
• SAP TRM (Treasury and Risk Management) (0)
• SAP Web Dynpro ABAP (198)
• SAP IBP (Integrated Business Planning) (0)
• SAP OO-ABAP (Object Oriented ABAP) (70)
• SAP S/4 HANA Finance (Simple Finance) (142)
• SAP FS-CD (Collections and Disbursements) (0)
• SAP PLM (Product Lifecycle Management) (0)
• SAP SuccessFactors (33)
• SAP Vistex (0)
• SAP ISR (IS Retail) (28)
• SAP IdM (Identity Management) (0)
• SAP IM (Investment Management) (0)
• SAP UI5 (59)
• SAP SCM (Supply Chain Management) (51)
• SAP XI (Exchange Infrastructure) (49)
• SAP Cloud Platform (34)
• SAP Testing (89)
• SAP SolMan (Solution Manager) (63)
• SAP MaxDB (116)
• SAP GUI (15)
• SAP AllOther (329)