Una guía sencilla para el uso de estructuras en C

Una estructura (o estructura) es un tipo de datos mixto en C. Puede usarlo para almacenar variables en diferentes tipos.

El tipo de estructura es comparable a las clases de la programación orientada a objetos. A veces, es posible que deba asignar valores a objetos con las mismas propiedades. En lugar de crear múltiples variables para estos objetos en su programa C, puede definirlos en una estructura .

Creando una estructura

Para definir una estructura, use la palabra clave struct , seguida del nombre de la estructura. Dentro de la estructura, puede especificar variables de diferentes tipos:

 struct Car{
char name[45];
int wheels;
double cost;
} ;

Puede definir varias instancias de Car agregando esas declaraciones de instancia después de la llave derecha en su declaración de estructura :

 struct Car{
/* variables */
} Car1, Car2, Car3;

También puede anidar una estructura dentro de una estructura. Vea el ejemplo a continuación:

 struct address {
int area_code;
char street_name[45];
};
struct Person {
char name[60];
float height;
struct address Persons_location;
};

Relacionado: Consejos de programación en C que debe aprender para comenzar

Operaciones sobre tipos de estructuras

Inicialización

Hay tres formas de inicializar los elementos de una estructura.

Puede insertar los valores separados por comas entre corchetes {} y luego asignarlos a la estructura. Debe tener en cuenta que los valores deben estar en el mismo orden en que declaró las variables.

 struct Car Car1 = {"Truck", 10, 65000};

Relacionado: Guía para principiantes de la biblioteca de plantillas estándar en C ++

También puede asignar los valores sin importar el orden en que los declaró. Vea el ejemplo a continuación.

 struct Car Car2 = {
.cost = 45000,
.name = "Truck",
.wheels = 8
};

La tercera forma de inicializar su estructura es asignarle una estructura existente del mismo tipo.

 struct Car Car3 = Car1;

Acceder a los elementos de la estructura

Para acceder al valor almacenado en un elemento de estructura, use el operador de punto.

 /* the syntax is:
structName.elementName */
int y = Car1.wheels;

Una mirada a la programación orientada a objetos

Como se mencionó al principio, la estructura es comparable al uso de clases en la programación orientada a objetos (OOP). Las clases son más sencillas de usar y permiten la reutilización de código.

Por esta razón y muchas otras, se introdujo C ++. C ++ es la versión orientada a objetos de C. Lo siguiente en su lista de lectura debería ser comprender los conceptos en OOP.