6. 

Assume integer is 2 bytes wide. What will be the output of the following code?

#include<stdio.h>
#include<stdlib.h>
#define MAXROW 3
#define MAXCOL 4

int main()
{
    int (*p)[MAXCOL];
    p = (int (*) [MAXCOL])malloc(MAXROW *sizeof(*p));
    printf("%d, %d\n", sizeof(p), sizeof(*p));
    return 0;
}

A. 2, 8
B. 4, 16
C. 8, 24
D. 16, 32

7. 

How many bytes of memory will the following code reserve?

#include<stdio.h>
#include<stdlib.h>

int main()
{
    int *p;
    p = (int *)malloc(256 * 256);
    if(p == NULL)
        printf("Allocation failed");
    return 0;
}

A. 65536
B. Allocation failed
C. Error
D. No output