15. The delete keyword tells the compiler that the address pointed to by the pointer will no longer be used. What do you think will happen if we access a deleted memory location? This is called dangling reference. Place a check (✔) beside your answer. delete city_ptr; std::cout << "City name after deletion: *city_ptr << "\n"; a. The program may crash if another program used the deleted memory address. << b. The system guarantees there will be no errors. c. The memory address remains reserved for our program so no other program can use it (wasted resource). 16. If we forget to call delete on a memory address, it will remain reserved in the heap. What is a potential issue when a memory address is not deleted? See the code below for an example. This is called a memory leak. Place a check (✔) beside your answer. for (int i = std::string* temp std::string ("garbage"); 0; i<10; i++) { = new 11 } a. The program may crash if another program used the memory address. b. The system guarantees there will be no errors. c. The memory address remains reserved for our program so no other program can use it (wasted resource).

C++ for Engineers and Scientists
4th Edition
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Bronson, Gary J.
Chapter8: I/o Streams And Data Files
Section: Chapter Questions
Problem 8PP: (Data processing) A bank’s customer records are to be stored in a file and read into a set of arrays...
icon
Related questions
Question
C++
int main() {
std::string* city_ptr
new std::string("Fullerton");
std::cout << "Pointer address:
<< &city_ptr << "\n";
11
std::cout << "Pointer value:
<< city ptr << "\n";
std::cout << "Dereferenced value: "
<< *city_ptr << "\n";
delete city_ptr;
city_ptr = nullptr;
return 0;
}
Screen output*
Pointer address: 0x7ffe40b1ac30
Pointer value: 0xb832c0
De ferenced value: Fullerton
Memory addresses are usually different every time you run
the program because it depends on the system's memory
availability.
Symbol Table
Variable Scope Type
Name
city_ptr main() std::string* 0x7ffe40b1ac30
memory addresses are often represented in hexadecimal
format (https://en.wikipedia.org/wiki/Hexadecimal)
Memory Visualization
Stack (~8 MB limit)
Memory
Address
Ox7ffe40b1ac30
Ox7ffe40b1ac37
Value
Memory address*
Oxe5c2c0
Heap (virtually
unlimited)
Memory
Address
Oxe5c2c0
Oxe5c2df
Value
std::string
"Fullerton"
Transcribed Image Text:int main() { std::string* city_ptr new std::string("Fullerton"); std::cout << "Pointer address: << &city_ptr << "\n"; 11 std::cout << "Pointer value: << city ptr << "\n"; std::cout << "Dereferenced value: " << *city_ptr << "\n"; delete city_ptr; city_ptr = nullptr; return 0; } Screen output* Pointer address: 0x7ffe40b1ac30 Pointer value: 0xb832c0 De ferenced value: Fullerton Memory addresses are usually different every time you run the program because it depends on the system's memory availability. Symbol Table Variable Scope Type Name city_ptr main() std::string* 0x7ffe40b1ac30 memory addresses are often represented in hexadecimal format (https://en.wikipedia.org/wiki/Hexadecimal) Memory Visualization Stack (~8 MB limit) Memory Address Ox7ffe40b1ac30 Ox7ffe40b1ac37 Value Memory address* Oxe5c2c0 Heap (virtually unlimited) Memory Address Oxe5c2c0 Oxe5c2df Value std::string "Fullerton"
15. The delete keyword tells the compiler that the
address pointed to by the pointer will no longer be used.
What do you think will happen if we access a deleted
memory location? This is called dangling reference.
Place a check (✔) beside your answer.
delete city_ptr;
std::cout << "City name after deletion:
*city_ptr << "\n";
a. The program may crash if another program used
the deleted memory address.
<<
b. The system guarantees there will be no errors.
c. The memory address remains reserved for our
program so no other program can use it (wasted
resource).
16. If we forget to call delete on a memory address, it will
remain reserved in the heap. What is a potential issue
when a memory address is not deleted? See the code
below for an example. This is called a memory leak.
Place a check (✔) beside your answer.
for (int i
std::string* temp
std::string ("garbage");
=
0; i<10; i++) {
= new
"1
}
a. The program may crash if another program used
the memory address.
b. The system guarantees there will be no errors.
c. The memory address remains reserved for our
program so no other program can use it (wasted
resource).
Transcribed Image Text:15. The delete keyword tells the compiler that the address pointed to by the pointer will no longer be used. What do you think will happen if we access a deleted memory location? This is called dangling reference. Place a check (✔) beside your answer. delete city_ptr; std::cout << "City name after deletion: *city_ptr << "\n"; a. The program may crash if another program used the deleted memory address. << b. The system guarantees there will be no errors. c. The memory address remains reserved for our program so no other program can use it (wasted resource). 16. If we forget to call delete on a memory address, it will remain reserved in the heap. What is a potential issue when a memory address is not deleted? See the code below for an example. This is called a memory leak. Place a check (✔) beside your answer. for (int i std::string* temp std::string ("garbage"); = 0; i<10; i++) { = new "1 } a. The program may crash if another program used the memory address. b. The system guarantees there will be no errors. c. The memory address remains reserved for our program so no other program can use it (wasted resource).
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Concept of pointer parameter
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT