[ Foro de C++ ]

GETLINE ME DA PROBLEMA.....

13-May-2011 14:39
oscar gomez
1 Respuestas

Cordial saludo profesor Nacho:

Profesor es que tengo un programa que hice y que me ejecuta perfectamente,sin embargo me esta funcionando solo introduciendo el primer nombre de un candidato( es decir capturo el nombre del candidato de la forma:  
         cout<<"nombre del candidato "<<i+1<<": ";
         cin>>nomcandidatos[i];)

bien, en otros programas he utilizado y me ha funcionado sin embargo en es que te adjunto no:
           cin.ignore();
           getline(cin,empleados[i]);

de esta forma me toma perfectamente nombres completos ( de mas de una palabra) intento hacerlo en el programa que te indico pero no me funciona ,quisiera me ayudaras a ver cual es el problema y que me ejecute correctamente, agradeciendo de antemano tu generosa ayuda.

te adjunto el programa para que lo puedas ejecutar y te des cuenta del error quiza mas facilmente y me ayudes a que  me ejecute correctamente.


15-May-2011 22:03
Nacho Cabanes (+83)

Dos pautas para aislar el problema:

- Prueba con un fuente que sea lo más sencillo posible y que falle. Si el fuente es muy grande, el fallo puede estar en cualquier sitio que no sea el que tú creas.

- Si el fuente ya es grande y te cuesta reducirlo a algo simple, al menos añade algún "cout" que te ayude a detectar el problema, viendo si los valores de las variables son en cada paso los que deben. Por ejemplo:

getline(cin,empleados[i]);
cout << "Contador:" << i << "\n";
cout << "Valor:" << empleados[i] << "\n";

Sería mejor usar el depurador que incluye tu entorno de programación, pero usar "cout" te puede ayudar a descubrir fallos si tu entorno no incluye depurador o si el problema es muy simple.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)