Examveda

What will be the output of the following C++ code?
#include <iostream>
#include <list>
using namespace std;
int main ()
{
    list<int> mylist;
    list<int> :: iterator it1, it2;
    for (int i = 1; i < 10; ++i) mylist.push_back(i * 1);
        it1 = it2 = mylist.begin();
    advance (it2, 6);
    ++it1;
    it1 = mylist.erase (it1);
    it2 = mylist.erase (it2);
    ++it1;
    --it2;
    mylist.erase (it1, it2);
    for (it1 = mylist.begin(); it1 != mylist.end(); ++it1)
        cout << ' ' << *it1;
    return 0;
}

A. 1 3 6

B. 8 9

C. 1 3 6 8 9

D. 4 6 8 9

Answer: Option C


Join The Discussion

Related Questions on C plus plus miscellaneous

What is the difference between '++i' and 'i++' in C++?

A. None of the above

B. They both have the same effect

C. '++i' increments the value of 'i' before returning it, while 'i++' increments the value of 'i' after returning it

D. '++i' increments the value of 'i' after returning it, while 'i++' increments the value of 'i' before returning it