Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

5. Consider the following statement: string str = \"Now is the time for the part

ID: 3841617 • Letter: 5

Question

5. Consider the following statement:

string str = "Now is the time for the party!";

What is the output of the following statements? (Assume that all parts are independent of each

other.)

a. cout << str.size() << endl;

b. cout << str.substr(7, 8) << endl;

c. string::size_type ind = str.find('f');

string s = str.substr(ind + 4, 9);

cout << s << endl;

d. cout << str.insert(11, "best ") << endl;

e. str.erase(16, 14);

str.insert(16, "to study for the exam?");

cout << str << endl;

Explanation / Answer

The outputs of the statements are as follows:
a. 30
Explanation – it just prints the total size of the string str in bytes.

b. the time
Explanation – substr(7,8) means accessing a substring of 8 bytes starting from the 7th byte.

c. the party
Explanation - str.find('f') finds the character ‘f’ and stores its index value in ‘ind’. Then a new string ‘s’ is created to store the substring of str of 9 bytes starting from the ‘ind+4’ position in str i.e., from ‘t’.

d. Now is the best time for the party!
Explanation - str.insert(11, "best ") inserts “best” string starting from the 11th byte of the string str.

e. Now is the time to study for the exam?
Explanation - str.erase(16, 14) erases 14 characters from str starting from the 16th byte. Then the string “to study for the exam?” is inserted starting from the 16th byte.