Eduqas A-Level Computer Science A500QS
Data Structures: Arrays, Records and Hash Tables
Stacks, Queues, Linked Lists and Trees
Boolean Logic and Simplification
Algorithms, Pseudo-Code and Programming Constructs
Variables, Scope, Parameters and Identifiers
Recursion and Modular Programming
Sorting Algorithms
Searching and Shortest-Path Algorithms
Big O Notation and Algorithm Efficiency
Validation, Verification and Testing
Data Compression
Programming Paradigms and Computer Languages
Systems Analysis, Maintenance and Documentation
System Design and Human-Computer Interaction
Software Engineering Tools and Translators
Computing, Society and the Law
Computer Architecture, the Processor and Assembly Language
Input, Output and Secondary Storage
Networks, Protocols and the Internet
Data Transmission and Network Performance
Number Systems and Binary Arithmetic
Data Types, Characters and Floating Point
Files, Records and File Organisation
Databases, Normalisation and Entity Modelling
SQL, Big Data and Distributed Systems
The Operating System and Its Modes
Interrupts, Memory Management and Scheduling
Types of Software System
Data Security, Cryptography and Attack
Variables, Scope, Parameters and Identifiers
Call by value and call by reference
- 3 things to know
- Component 1
Overview
Call by value and call by reference.
What you need to know
Answer each one before you reveal it.
What is call by reference?
A variable X holds 5 and is passed by value to a procedure that doubles its parameter. What does X hold after the call?
Questions from this subtopic
Each one with the model answer underneath.
- 1
What is call by value?
Model answer
Call by value passes a copy of the data into the subprogram. Changes made to the copy do not affect the original variable.
- 2
What is call by reference?
Model answer
Call by reference passes the address of the original variable into the subprogram. Changes made inside the subprogram alter the original.
- 3
A variable X holds 5 and is passed by value to a procedure that doubles its parameter. What does X hold after the call?
Model answer
X still holds 5 because the procedure worked on a copy. The doubled value of 10 is lost when the procedure returns.
- 4
A variable X holds 5 and is passed by reference to a procedure that doubles its parameter. What does X hold after the call?
Model answer
X holds 10 after the call because the procedure worked on the original store. The change is visible to the calling program.
- 5
Give one advantage of call by value.
Model answer
Call by value protects the caller's data because the subprogram cannot change the original. Faults inside the subprogram stay contained.
- 6
Give one disadvantage of call by value.
Model answer
A large structure such as an array is expensive to copy in both time and memory. The copy must be made every time the subprogram is called.
Other ways to work this
The same content, four other ways.
What is inside Levo
Six ways to work the same material.
Every question in Variables, Scope, Parameters and Identifiers, on a schedule.
Attempt a question from memory, write the correct version, then attempt it again. Levo records the jump between your first attempt and your last, and brings each question back on the day you are due to forget it.
Or £46 a year, about £3.83 a month. Cancel anytime.