#include &lt;iostream&gt;    using namespace std;    int main&#40;&#41;    &#123;        char* ptr;        unsigned long int Test = sizeof&#40;size_t&#40;0&#41; / 3&#41;;        cout &lt;&lt; Test &lt;&lt; endl;        try        &#123;            ptr = new char&#91;size_t&#40;0&#41; / 3&#93;;            delete&#91; &#93; ptr;        &#125;        catch &#40;bad_alloc &amp;thebadallocation&#41;        &#123;            cout &lt;&lt; thebadallocation.what&#40;&#41; &lt;&lt; endl;        &#125;;        return 0;    &#125;
A. 4
B. 2
C. bad_alloc
D. depends on compiler
Answer:A
#include &lt;iostream&gt;    using namespace std;    int main&#40;&#41;    &#123;        char* ptr;        unsigned long int Test = sizeof&#40;size_t&#40;0&#41; / 3&#41;;        cout &lt;&lt; Test &lt;&lt; endl;        try        &#123;            ptr = new char&#91;size_t&#40;0&#41; / 3&#93;;            delete&#91; &#93; ptr;        &#125;        catch &#40;bad_alloc &amp;thebadallocation&#41;        &#123;            cout &lt;&lt; thebadallocation.what&#40;&#41; &lt;&lt; endl;        &#125;;        return 0;    &#125;
A. 4 B. 2 C. bad_alloc D. depends on compiler
Explanation:The size of unsigned long int always depends on compiler.