Examveda

What will be the output of the following C++ code?
#include <iostream>
#include <memory>
#include <algorithm>
using namespace std;
int main ()
{
    int numbers[] = {1, 5, 4, 5};
    pair <int*, ptrdiff_t> result = get_temporary_buffer<int>(4);
    if (result.second > 0)
    {
        uninitialized_copy (numbers, numbers + result.second, result.first);
        sort (result.first, result.first + result.second);
        for (int i = 0; i < result.second; i++)
            cout << result.first[i] << " ";
        return_temporary_buffer (result.first);
    }
    return 0;
}

A. 1 5 5 4

B. 5 5 4 1

C. 1 4 5 5

D. 1 4 5 2

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