Introduction to Union in C Language

Introduction to Union in C Language

It looks same as structure but implementation is different. Difference between structure and union is that the members of structure get different memory locations but members of a union share common memory location.

C Language Compiler allocates memory to hold that element of union which has the largest size.


union <uname>


<Data-type1> var1;

<Data-type2> var2;



uname is the name of union specified by programmer.

Data-type1, Data-type2,…  are data types of elements of union.

var1, var2,… are members  of union.

Union variable

We can declare variables of a union just like structure.


union <tag_name> var1,var2,…..varN;

Here, tag_name is the name of union of which we want to declare variables.

var1,var2,……..varN are names of union variables.

Program to demonstrate union.
union demo
int a;
float b;
int main()
union demo d1;
Size of union variable d=4
Size of d1 is displayed 4 because the size of largest element of union i.e. b(float type) is 4 bytes.  The value of 1d.b is displayed correctly because union variable can hold value of only one of its elements at a time. The latest value stored is of d.b.

Spread the love
Lesson tags: declare union variable in c, difference between structure and union, program to use union in c, size of a union variable in c, union in c
Back to: C Programming Language
Spread the love