What will be the output of the following C++ code?
#include <iostream>
using namespace std;
int main()
{
char* ptr;
unsigned long int a = (size_t(0) / 3);
cout << a << endl;
try
{
ptr = new char[size_t(0) / 3];
delete[ ] ptr;
}
catch(bad_alloc &thebadallocation)
{
cout << thebadallocation.what() << endl;
};
return 0;
}
#include <iostream>
using namespace std;
int main()
{
char* ptr;
unsigned long int a = (size_t(0) / 3);
cout << a << endl;
try
{
ptr = new char[size_t(0) / 3];
delete[ ] ptr;
}
catch(bad_alloc &thebadallocation)
{
cout << thebadallocation.what() << endl;
};
return 0;
}
A. 0
B. 2
C. bad_alloc
D. depends on compiler
Answer: Option A
Join The Discussion