Top

Discussion

Pick the best statement for the below program:

#include "stdio.h"
 
int main()
{
 struct {int a[2], b;} arr[] = {[0].a = {1}, [1].a = {2}, [0].b = 1, [1].b = 2};
 
 printf("%d %d ?nd",arr[0].a[0],arr[0].a[1],arr[0].b);
 printf("%d %d %dn",arr[1].a[0],arr[1].a[1],arr[1].b);
 
 return 0;
}

 

  • A.Compile error because struct type (containing two fields i.e. an array of int and an int) has been specified along with the definition of array arr[] of this struct type.
  • B.Compile error because of incorrect syntax for initialization of array arr[].
  • C.No compile error and two elements of arr[] would be defined and initialized. Output would be “1 0 1 and 2 0 2”.
  • D.No compile error and two elements of arr[] would be defined and initialized. Output would be “1 X 1 and 2 X 2” where X is some garbage random number.

Answer: C

No answer description available for this question.

No comment is present. Be the first to comment.
Loading…

Post your comment