What will be the output of the program? #include<stdio.h> int main() { union a { int i; char ch[2]; }; union a u; u.ch[0]=3; u.ch[1]=2; printf("%d, %d, %d ", u.ch[0], u.ch[1], u.i); return 0; }

Correct Answer: 3, 2, 515

Explanation:

The system will allocate 2 bytes for the union.


The statements u.ch[0]=3; u.ch[1]=2; store data in memory as given below.



More Questions from Structures, Unions, Enums

Discussion & Comments

No comments yet. Be the first to comment!
Join Discussion