[ Foro de C++ ]

Solo un pequeñito problema de 5 lineas [C++] - cin y getline

20-Nov-2019 03:33
Invitado (Hannia)
1 Respuestas

Aquí les muestro el problema


for(int i=1;i<=5;i++)
	{
	cout<<"Introduzca nombre completo del alumno "<<i<<endl;
	gets(n[i]); //Aquí precisamente
	}


Al almacenar los caracteres n en cin va todo bien pero no guarda después del espacio, así que intente utilizar gets y cin.getline, no da error de compilación pero al momento de ejecutar por alguna razón no me pide el nombre del alumno 1, pasa directo al 2, al usar cin no pasa esto pero no me guarda lo que quiero.
Básicamente el n[1] queda vació. Hay alguna solución? Es un trabajo de escuela, soy una principiante en esto.


20-Nov-2019 10:01
Nacho Cabanes (+53)

Efectivamente, "cin" en una cadena de texto lee hasta el primer espacio.

Si quieres leer una línea con espacios, deberás usar getline. Si no sabes su formato correcto, mira el apartado 8.3 del curso:

https://www.aprendeaprogramar.com/cursos/verApartado.php?id=16008
 






(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.)