![Trending Articles on Technical and Non Technical topics](/images/trending_categories.jpeg)
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
State the difference between structure and union with suitable example in C language
The differences between structures and unions in C language are explained below −
S.No | Structure | Union |
---|---|---|
1 | Definition Structure is heterogenous collection of data items grouped together under a single name | Definition A union is a memory location that is shared by several variables of different datatypes. |
2 | Syntax;struct tagname{ datatype member1; datatype member2; ---- ---- ---- }; | Syntax;union tagname{ datatype member1; datatype member2; ---- ---- ---- }; |
3 | Eg;struct sample{ int a; float b; char c; }; | Eg;union sample{ int a; float b; char c; }; |
4 | keyword − struct | keyword − union |
5 | Memory allocation | Memory allocation |
6 | ![]() | ![]() |
7 | Memory allocated is the sum of sizes of all datatypes in structure(Here, 7bytes) | Memory allocated is the maximum size allocated among all the datatypes in union(Here, 4bytes) |
8 | Memory is allocated for all the members of the structure differently | Only one member will be residing in the memory at any particular instance |
Example
Following is the C program for structures −
#include<stdio.h> struct size{ double a; int b; char c; float d; }; int main(){ printf("%ld",sizeof( stuct size)); }
Output
When the above program is executed, it produces the following result −
24
Example
Following is the C program on union −
#include<stdio.h> union size{ double a; int b; char c; float d; } Int main(){ Printf("ld",sizeof(union size)); }
Output
When the above program is executed, it produces the following result −
8
Advertisements