Structure occupies the memory size that is equal to the sum
of sizes of all members of the structure.
But Union occupies the memory size that is equal to the size
of the largest member of the Union.
As shown in below image, total memory occupied by employee
union is 6 bytes. If it was structure, memory occupied would have been 8 bytes.
Example –
Below structure will occupy 52 bytes. But if it was union,
it would have occupied 50 bytes.
struct Department
{
int dept_id;
char dept_name[50];
};
#include<stdio.h>
#include<string.h>
union u // Here is declare
the union.
{
int a; //veriable
declaration.
float b;
char s1[17];
};
int main( )
{
union u u; // here is call the
union.
system("cls");
u.a = 8; //
printf( "u.a :
%d\n", u.a);
u.b = 99.0;
printf( "u.b :
%f\n", u.b);
strcpy( u.s1, "fortitude");
printf( "u.s1 :
%s\n", u.s1);
getchar();
}
No comments:
Post a Comment
Leave your valuable feedback. Your thoughts do matter to us.