Structures and Unions

A structure is a collection of variables under a single name. These variables can be of different types, and each has a name which is used to select it from the structure. A structure is a convenient way of grouping several pieces of related information together.

Declaring Structures

struct mystruct
{

int numb;
char ch;

}

Structure has name mystruct and it contains two variables: an integer named numb and a character named ch.

Declaring structure variable

struct mystruct s1;

Accessing Member Variables

s1.numb=12;

s1.ch=’b’;

printf(“\ns1.numb=%d”,s1.numb);

printf(“\ns1.ch=%c”,s1.ch);

typedef can also be used with structures. The following creates a new type sb which is of type struct chk and can be initialised as usual:

typedef struct chk
{

char name[50];
int magazinesize;
float calibre;

} sb;

ab arnies={“adam”,30,7};

Unions in C

A union is an object that can hold any one of a set of named members. The members of the named set can be of any data type. Members are overlaid in storage. The storage allocated for a union is the storage required for the largest member of the union, plus any padding required for the union to end at a natural boundary of its strictest member.

union {

char n;
int age;
float weight;

} people;

people.n=’g’;
people.age=26;
people.weight=64;

Leave a Reply

Your email address will not be published. Required fields are marked *