fbpx

Responder a: Error al acceder a datos de estructuras con punteros en C++

  • Angel Sánchez

    organizador
    19 septiembre, 2024 en 10:54 pm

    ¡Hola Vladimir! Parece que tienes un problema al intentar imprimir la información de los ingenieros a través de punteros. En tu función imprimirInges, no has inicializado el puntero pInge, y además, no lo estás utilizando correctamente. Aquí hay algunas correcciones que podrías hacer:

    1. Inicializa el puntero pInge: Debes apuntar pInge al primer elemento del array Ingeniero antes de usarlo.
    2. Acceso a los datos: Cuando usas punteros para acceder a los datos, no es necesario desreferenciar cada campo como lo estás haciendo. Puedes hacerlo directamente.

    Aquí tienes el código corregido de la función imprimirInges:

    void imprimirInges() {

    pInge = Ingeniero; // Inicializa el puntero al primer ingeniero

    cout << "------INGENIEROS DISPONIBLES------" << endl;

    for (int i = 0; i < 5; i++) {

    cout << "Nombre: " << pInge[i].nombreIngeniero << endl;

    cout << "Especialidad: " << pInge[i].especialidad << endl;

    cout << "Edad: " << pInge[i].edad << endl; // Agregado para imprimir la edad

    cout << endl; // Para separar los ingenieros

    }

    }

    Prueba estos cambios y deberías ver la información de los ingenieros correctamente. Si tienes más dudas o necesitas ayuda con otra parte, ¡avísame!