logo

CuriousTab

CuriousTab

Complicated Declarations problems


  • 1. What will be the output of the program?
    #include<stdio.h>
    
    int main()
    {
        struct s1
        {
            char *z;
        int i;
        struct s1 *p;
        };
        static struct s1 a[] = {{"Nagpur", 1, a+1} , {"Chennai", 2, a+2} , 
                                {"Bangalore", 3, a} };
    
        struct s1 *ptr = a;
        printf("%s,", ++(ptr->z));
        printf(" %s,", a[(++ptr)->i].z);
        printf(" %s", a[--(ptr->p->i)].z);
        return 0;
    }
    

  • Options
  • A. Nagpur, Chennai, Bangalore
  • B. agpur, hennai, angalore
  • C. agpur, Chennai, angalore
  • D. agpur, Bangalore, Bangalore
  • Discuss
  • 2. What will be the output of the program in DOS (Compiler - Turbo C)?
    #include<stdio.h>
    double i;
    
    int main()
    {
        (int)(float)(char) i;
        printf("%d", sizeof((int)(float)(char)i));
        return 0;
    }
    

  • Options
  • A. 1
  • B. 2
  • C. 4
  • D. 8
  • Also asked in: GRE, GATE, CAT, Bank Exams, AIEEE, Bank PO, Bank Clerk, Analyst

  • Discuss
  • 3. What will be the output of the program?
    #include<stdio.h>
    
    int main()
    {
        char huge *near *far *ptr1;
        char near *far *huge *ptr2;
        char far *huge *near *ptr3;
        printf("%d, %d, %d\n", sizeof(**ptr1), sizeof(ptr2), sizeof(*ptr3));
        return 0;
    }
    

  • Options
  • A. 4, 4, 4
  • B. 2, 2, 2
  • C. 2, 8, 4
  • D. 2, 4, 8
  • Discuss
  • 4. What will be the output of the program in DOS (Compiler - Turbo C)?
    #include<stdio.h>
    double i;
    
    int main()
    {
        (int)(float)(char) i;
        printf("%d",sizeof(i));
        return 0;
    }
    

  • Options
  • A. 4
  • B. 8
  • C. 16
  • D. 22
  • Discuss

First 2 3