Home / C Programming / Declarations and Initializations :: Discussion

Discussion :: Declarations and Initializations

  1. What is the output of the program?

    #include
     int main() 
    {    
        union a     
        {        
        int i;         
        char ch[2];     
    };    
       union a u;   
       u.ch[0] = 3;    
       u.ch[1] = 2;  
       printf("%d, %d, %d\n", u.ch[0], u.ch[1], u.i);      
    
      return 0; 
    } 
    

  2. A.

    3, 2, 515

    B.

    515, 2, 3

    C.

    3, 2, 5

    D.

    None of these

    View Answer

    Workspace

    Answer : Option A

    Explanation :

    printf("%d, %d, %d\n", u.ch[0], u.ch[1], u.i); It prints the value of u.ch[0] = 3, u.ch[1] = 2 and it prints the value of u.i means the value of entire union size.

    So the output is 3, 2, 515.


Be The First To Comment