Estructura C ++ con ejemplo

¿Qué es una estructura en C ++?

UNA. STRUCHT es una estructura de datos de C ++ que se puede utilizar para almacenar elementos de diferentes tipos de datos juntos. IC ++, una estructura es un tipo de datos definidos por el usuario. La estructura crea un tipo de datos para agrupar elementos de diferentes tipos de datos en un solo tipo de datos.

Por ejemplo:

Suponga que tiene que almacenar información sobre una persona, su nombre, ciudadanía y edad. Puede crear variables como nombre, ciudadanía y edad para almacenar los datos por separado.

Sin embargo, es posible que deba almacenar información sobre muchas personas en el futuro. Significa que las variables se crean para diferentes individuos. Por ejemplo, nombre1, ciudadanía1, edad1, etc. Para evitar esto, es mejor crear una estructura.

En este tutorial de C ++, aprenderá:

¿Cuándo se puede utilizar una estructura?

Aquí hay algunas razones para usar una estructura en C ++.

  • Utilice una estructura en la que necesite almacenar elementos de diferentes tipos de datos en un tipo de datos.
  • Las estructuras de C ++ son un tipo de valor en lugar de un tipo de referencia. Utilice una estructura si no tiene la intención de modificar sus datos después de la creación.

Iniciativa de estructura C ++

Para crear una estructura C ++, usamos la estructura de palabras clave, seguida de un identificador. El identificador es el nombre de la estructura. Aquí está la sintaxis para crear una estructura C ++:

Sintaxis:

struct struct_name  
{  
     // struct members
}   

En la sintaxis anterior, estamos usando la estructura de palabras clave. El nombre de la estructura es nombre_estructura.

Los miembros de la estructura se colocan entre llaves. Estos miembros probablemente estén relacionados con diferentes tipos de datos.

Por ejemplo:

struct Person  
{  
    char name[30];  
     int citizenship;  
     int age;  
}  

En el ejemplo anterior, una persona es una estructura con tres miembros. Los miembros incluyen nombre, ciudadanía y edad. Un miembro es de un tipo de datos char, mientras que los otros 2 son números enteros cuando se crea una estructura, no se asigna memoria. La memoria se asigna solo después de agregar una variable a la estructura.

Crear eventos estructurados

En el ejemplo anterior, tenemos una persona nombrada. Podemos crear variables de estructura de la siguiente manera:

Person p;

El tipo humano p es una variable estructural. Podemos usar esta variable para acceder a los miembros de la estructura.

Acceso a miembros de estructuras

Para acceder a los miembros de la estructura, usamos el ejemplo de la estructura y el operador punto (.). Por ejemplo, para acceder a la edad de un miembro humano estructurado:

p.age = 27;

Tenemos acceso a la edad del miembro Structural Man usando el ejemplo de la estructura, p. Luego, establecemos el valor de la edad del miembro en 27.

Ejemplo 1:

#include <iostream>    
using namespace std;
struct Person
{
	int citizenship;
	int age;
};
int main(void) {
	struct Person p;
	p.citizenship = 1;
	p.age = 27;
	cout << "Person citizenship: " << p.citizenship << endl;
	cout << "Person age: " << p.age << endl;

	return 0;
}

Producción:

Aquí hay una imagen del código:

Explicación del Código:

  1. Agregue el archivo de encabezado de iostream en nuestro programa para usar las funciones definidas en él.
  2. Incluya el nombre de espacio estándar para usar sus clases sin llamarlo.
  3. Cree una Persona llamada struct.
  4. El comienzo del cuerpo de la estructura.
  5. Cree un miembro estructurado llamado ciudadanía de tipo entero.
  6. Cree un miembro estructurado llamado tipo integer age.
  7. Fin de la estructura corporal.
  8. Llame a la función principal (). La lógica del programa debe agregarse dentro del cuerpo de esta función.
  9. Cree un ejemplo de la persona estructurada y asígnele el nombre de la página.
  10. Establezca el valor de la ciudadanía de los miembros en 1.
  11. Establezca el valor del miembro de edad de una estructura en 27.
  12. Imprima el valor de la ciudadanía de los miembros de la estructura en la consola junto con algún otro texto.
  13. Imprima el valor de la edad de un miembro de la estructura en la consola junto con algún otro texto.
  14. El programa debería devolver un valor si se ejecuta correctamente.
  15. Fin de la función principal ().

Consejos para la estructura

Es posible crear un puntero que se centre en la estructura. Es similar a cómo crear pistas que se dirijan a tipos de datos nativos como int, float, duplicate, etc. Tenga en cuenta que un puntero en C ++ almacenará una ubicación de memoria.

Ejemplo 2:

#include <iostream>
using namespace std;

struct Length
{
	int meters;
	float centimeters;
};

int main()
{
	Length *ptr, l;

	ptr = &l;

	cout << "Enter meters: ";
	cin >> (*ptr).meters;
	cout << "Enter centimeters: ";
	cin >> (*ptr).centimeters;
	cout << "Length = " << (*ptr).meters << " meters " << (*ptr).centimeters << " centimeters";

	return 0;
}

Producción:

Aquí hay una imagen del código:

Explicación del Código:

  1. Incluya el archivo de encabezado de iostream en nuestro programa para usar sus funciones.
  2. Incluya el nombre de espacio estándar en nuestro programa para usar sus clases sin llamarlo.
  3. Crea una estructura llamada Longitud.
  4. El comienzo del cuerpo de la estructura Longitud.
  5. Cree un miembro estructurado llamado medidor de tipo de datos enteros.
  6. Cree un miembro estructurado llamado centímetro de un tipo entero.
  7. El extremo del cuerpo de la estructura Longitud.
  8. Llame a la función principal ().
  9. El comienzo del cuerpo de la función principal ().
  10. Cree una variable de puntero * ptr y una variable normal de tipo Longitud.
  11. Almacene la variable de dirección l en nuestras variables de puntero.
  12. Muestre un mensaje en la consola, pidiendo al usuario que ingrese el valor de su medidor variable.
  13. Leer el valor ingresado por el usuario a través del teclado. Aquí se accede a los medidores de función miembro mediante la variable de puntero.
  14. Muestre un mensaje en la consola, pidiendo al usuario que ingrese el valor de un centímetro variable.
  15. Leer el valor ingresado por el usuario a través del teclado. Los centímetros de los miembros se encuentran aquí mediante el uso de la variable de puntero.
  16. Muestra los valores leídos por el usuario en la consola junto a algún otro texto.
  17. El programa debe devolver valor para una ejecución exitosa.
  18. El final del cuerpo de la función principal ().

Estructura como un argumento de función

Puede pasar una estructura a una función como argumento. Esto se hace de la misma forma que se ejecuta un argumento normal. Las variables de estructura también se pueden pasar a una función. Un buen ejemplo es cuando necesita mostrar los valores de los miembros de una estructura. Ilustramos esto:

Ejemplo 3:

#include<iostream>
using namespace std;

struct Person
{
	int citizenship;
	int age;
};

void func(struct Person p);

int main()
{
	struct Person p;

	p.citizenship = 1;
	p.age = 27;

	func(p);
	return 0;
}
void func(struct Person p)
{
	cout << " Person citizenship: " << p.citizenship<<endl;
	cout << " Person age: " << p.age;
}

Producción:

Aquí hay una imagen del código:

Explicación del Código:

  1. Incluya el archivo de encabezado de iostream en nuestro archivo. Luego usaremos sus funciones sin obtener errores.
  2. Incluya el nombre de espacio estándar en nuestro programa para usar sus clases. No tendremos que llamar al nombre del espacio para usar sus clases.
  3. Cree una Persona llamada struct.
  4. El comienzo de un cuerpo humano estructurado.
  5. Cree un miembro de una estructura humana. El miembro se llama ciudadanía y es una especie de número entero.
  6. Cree un miembro de una estructura humana. El miembro se nombra por edad y es un tipo entero.
  7. El fin del cuerpo humano estructurado.
  8. Cree una función que tome el ejemplo de una estructura Person, pág.
  9. Llame a la función principal. El {comienzo del cuerpo marca la función principal ().
  10. Cree un ejemplo de una persona Struct y dé el nombre p.
  11. Acceda a la ciudadanía variable de un miembro de la estructura usando un ejemplo de la estructura, p, y asígnele el valor 1.
  12. Acceda a la variable edad del miembro de la estructura usando el ejemplo de la estructura, p, y asígnele el valor 27.
  13. Llame a la función y agregue el ejemplo de la Persona estructurada, p, como argumento.
  14. La función debe devolver valor en una ejecución exitosa.
  15. El final del cuerpo de la función principal ().
  16. Crea el cuerpo de la función.
  17. El comienzo del cuerpo funcional.
  18. Acceda al valor de ciudadanía de los miembros estructurados e imprímalo en la consola junto con otro texto.
  19. Acceda al valor de edad del miembro de la estructura e imprímalo en la consola junto con otro texto.
  20. El fin del cuerpo funcional.

Límite a la estructura de C ++

Los límites de las estructuras son los siguientes:

  • El tipo de datos estructurados no se puede tratar como tipos de datos integrados.
  • Los operadores como + – y otros operadores no se pueden usar en variables de estructura.
  • Las estructuras no admiten la ocultación de datos. Se puede acceder a los miembros de la estructura con cualquier función, independientemente de su alcance.
  • Los miembros estáticos no se pueden declarar dentro del cuerpo de una estructura.
  • No se pueden crear constructores dentro de una estructura.

Resumen:

  • Una estructura es una estructura de datos que almacena elementos de datos de varios tipos.
  • Mientras que una matriz almacena elementos de datos similares, una estructura almacena elementos de datos de diferentes tipos.
  • Se debe utilizar una estructura en la que no se espere que los elementos de datos cambien de valor.
  • El operador de punto (.) Puede acceder a los miembros de la estructura.
  • Necesitamos crear un ejemplo de la estructura.
  • Para crear una estructura C ++, usamos la palabra clave struct.
  • Las sugerencias que se centran en la estructura se crean de la misma manera que se crean las sugerencias que se centran en tipos regulares.
  • Una estructura se puede pasar como argumento a una función de la misma forma que se ejecutan las funciones normales.

Deja un comentario

Tu dirección de correo electrónico no será publicada.

Salir de la versión móvil