[ Foro de C++ ]

error al capturar datos

18-Aug-2020 07:39
Invitado (david)
1 Respuestas

alguien me puede ayudar con este código


#include<iostream>
#include<conio.h>
#include<string.h>

using namespace std;

int main(){
	int e;
	char d [15];
	
	
	cout<<"ingresa tu edad"; cin>>e;
	
	cout<<"tu edad es de :"<<e<<endl;
	
	cout<<"tienes diabetes :";
	cin.getline(d,15);
	
	
	
	getch();
	return 0;
}



despues de introducir la edad no me deja teclear mas texto en la segunda pregunta


18-Aug-2020 15:07
Nacho Cabanes (+84)

Es peligroso mezclar << con "getline" normales. Lo ideal es leer todo como texto (y convertir a número cuando corresponda), o bien saltar los avances de línea que quedan tras leer cada número.

La solución más sencilla es duplicar la línea del "cin.getline", para que primero lea el salto de línea pendiente (y lo ignore) y luego ya lea el dato real.






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