Declaración y Uso de una Estructura
En este primer ejemplo, definimos una estructura persona que contiene dos campos: nombre y edad. Luego, inicializamos y mostramos datos de dos instancias de esta estructura.
Código de Ejemplo:
#include<iostream>
#include<conio.h>
using namespace std;
// Definición de la estructura persona
struct persona {
char nombre[20];
int edad;
};
// Inicialización de datos
persona persona1 = {"Angel", 18},
persona2 = {"Carlos", 20}; // Nota: Cada instancia debe terminar con ";"
// Función principal
int main() {
// Mostrar datos de la primera persona
cout << "Nombre1: " << persona1.nombre << endl;
cout << "Edad1: " << persona1.edad << endl;
// Mostrar datos de la segunda persona
cout << "\nNombre2: " << persona2.nombre << endl;
cout << "Edad2: " << persona2.edad << endl;
getch(); // Espera a que el usuario presione una tecla
return 0;
}
Explicación:
Definición de la Estructura:
struct personadefine una estructura con dos campos:nombre(un arreglo de caracteres para almacenar el nombre) yedad(un entero para almacenar la edad).
Inicialización de Datos:
- Se crean dos instancias de la estructura (
persona1ypersona2) y se inicializan con valores específicos. Los datos se asignan en el momento de la declaración utilizando una lista de inicialización.
- Se crean dos instancias de la estructura (
Mostrar Datos:
- Se usan
coutpara imprimir los valores de los campos de cada instancia. El operador<<se utiliza para enviar datos a la salida estándar (pantalla).
- Se usan
Leer y Mostrar Datos de una Estructura
En el segundo ejemplo, se muestra cómo leer datos del usuario y luego imprimirlos utilizando la misma estructura.
Código de Ejemplo:
#include<iostream>
#include<conio.h>
using namespace std;
// Definición de la estructura persona
struct persona {
char nombre[20];
int edad;
} persona1; // Declaración de una instancia de la estructura
// Función principal
int main() {
// Leer datos del usuario
cout << "Nombre: ";
cin.getline(persona1.nombre, 20, '\n'); // Leer una línea de texto hasta 20 caracteres
cout << "Edad: ";
cin >> persona1.edad; // Leer un número entero
// Mostrar datos leídos
cout << "\nImprimiendo datos\n";
cout << "Nombre: " << persona1.nombre << endl;
cout << "Edad: " << persona1.edad << endl;
getch(); // Espera a que el usuario presione una tecla
return 0;
}
Explicación:
Declaración de la Estructura:
- Se define la estructura
personacon los mismos campos que en el primer ejemplo. Aquí, también se declara una instanciapersona1al mismo tiempo.
- Se define la estructura
Leer Datos del Usuario:
cin.getline()se usa para leer una línea completa de texto (incluido el nombre del usuario) y almacenarla en el camponombre.cin >>se usa para leer un valor entero (edad) y almacenarlo en el campoedad.
Mostrar Datos:
- Se utilizan
coutpara imprimir los datos leídos por el usuario, mostrando el nombre y la edad en la pantalla.
- Se utilizan
Resultado Esperado
Al ejecutar el segundo código, se solicitarán los datos al usuario. Supongamos que el usuario ingresa "Angel" para el nombre y "20" para la edad, el programa mostrará:
Nombre: Angel
Edad: 20
Imprimiendo datos
Nombre: Angel
Edad: 20