fbpx

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

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

    Posted by César Vladimir Mayo Sosa on 19 septiembre, 2024 at 10:45 pm

    Hola a todos.

    Empece a trabajar en el ejercicio propuesto del tema de PUNTEROS sin embargo me encontré con un problema que la querer implementar una estructura con la variable de tipo vector al momento de querer imprimir información mediante punteros no se puede visualizar los datos de impresion. Agradeceria mucho de su ayuda y les comparto un poco del código

    https://onlinegdb.com/O73GrW8Pj

    Angel Sánchez respondido 2 months ago 2 Miembros · 1 Responde
  • 1 Responde
  • Angel Sánchez

    Organizer
    19 septiembre, 2024 at 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!

Inicia sesión para responder.

Start of Discussion
0 de 0 respuestas Junio 2018
Ahora