What is a Structure?

A structure is like a container in programming. It’s a way to group different kinds of information together under a single name. Imagine it as a box where you can put different types of things like numbers, words, or even other boxes inside.

How to Make a Structure in C?

In C programming, you create a structure using the struct keyword followed by a name you choose. Inside the structure, you define various pieces of information, called “members” or “fields”. Each member can be a different type of data, like numbers or text.

Here’s an example of defining a structure named Point to represent coordinates in a 2D space:

struct Point {
    int x;
    int y;
};

What Can You Do with Structures?

Structures are useful for a few reasons:

  1. Grouping Information: They help organize different kinds of data that belong together, making it easier to handle.
  2. Representing Things: You can use structures to represent real-life things that have multiple characteristics, like a person with a name, age, and address.
  3. Building Complex Structures: They’re essential for creating more complicated data structures like lists or trees.

Setting Values for a Structure

Immediate Initialization:

You can set values for a structure when you create it:

struct Point p1 = { 10, 20 };

Here, p1 is a structure of type Point, and it’s immediately given the values 10 for x and 20 for y.

Individual Initialization:

You can also declare a structure first and then set its values later:

struct Point p1;
p1.x = 15;
p1.y = 25;

In this case, p1 is first declared as a Point structure, and then its x and y values are set separately.

Getting Information from a Structure

To get the information stored in a structure, you use the dot . operator:

printf("Coordinates: (%d, %d)\n", p1.x, p1.y);

This prints out the x and y values stored in the p1 structure.

Working with Pointers and Structures

If you’re dealing with pointers (a bit advanced), you use the arrow -> operator to access structure members:

struct Point* ptr = &p1;
printf("Coordinates: (%d, %d)\n", ptr->x, ptr->y);

The ptr->x and ptr->y help access x and y through the pointer ptr.

Structures are great for keeping related information together and are commonly used in programming to manage different kinds of data.