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:

  1. Definición de la Estructura:

    • struct persona define una estructura con dos campos: nombre (un arreglo de caracteres para almacenar el nombre) y edad (un entero para almacenar la edad).
  2. Inicialización de Datos:

    • Se crean dos instancias de la estructura (persona1 y persona2) y se inicializan con valores específicos. Los datos se asignan en el momento de la declaración utilizando una lista de inicialización.
  3. Mostrar Datos:

    • Se usan cout para imprimir los valores de los campos de cada instancia. El operador << se utiliza para enviar datos a la salida estándar (pantalla).

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:

  1. Declaración de la Estructura:

    • Se define la estructura persona con los mismos campos que en el primer ejemplo. Aquí, también se declara una instancia persona1 al mismo tiempo.
  2. 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 campo nombre.
    • cin >> se usa para leer un valor entero (edad) y almacenarlo en el campo edad.
  3. Mostrar Datos:

    • Se utilizan cout para imprimir los datos leídos por el usuario, mostrando el nombre y la edad en la pantalla.

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