elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ayuda con error de cin.getline
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con error de cin.getline  (Leído 2,204 veces)
Black cracker

Desconectado Desconectado

Mensajes: 11



Ver Perfil
Ayuda con error de cin.getline
« en: 16 Agosto 2015, 08:55 am »

Hola gente. Se me ha presentado el error de los getline.. He estado buscando en linea cual ha de ser el posible error pero nada. Bueno, este es el error que me tira:

Citar
Error C2664: 'std::basic_istream<char,std::char_traits<char>> &std::basic_istream<char,std::char_traits<char>>::getline(_Elem *,std::streamsize,_Elem)'

Me marca el punto en rojo del "cin.getline();"

El comando de getline(cin, inventario[cont].localidad); no me da error, pero como que no lo lee dado que se lo salta o no pide dato.

Aca el codigo:
Citar
void agregar(vehiculo inventario[], int &cont){

   cout << "Digite la placa del vehiculo: ";
   cin >> inventario[cont].placa;
   cout << " " << endl;

   cout << "Digite la localiacion general del vehiculo: ";
   
   //getline(cin, inventario[cont].localidad);
   cin.getline(inventario[cont].localidad,100);
   //cin >> inventario[cont].localidad;
   cout << " " << endl;
   

Gracias de antemano..  ;-);-) ;D


En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Ayuda con error de cin.getline
« Respuesta #1 en: 16 Agosto 2015, 13:13 pm »

Y ".localidad" es...? Un string?

Si es un string, usa la primera forma.
Si es un char*, usa la segunda.

Si dices que la primera forma no te la lee, es porque has puesto:
Código
  1. cin >> inventario[cont].placa;
antes. "cin<<" lee, pero deja en el buffer de entrada el salto de linea. Así que getline lee ese salto de linea.

Antes del getline(cin, string), pon
Código
  1. cin.ignore();
para sacar del buffer el salto de linea.


« Última modificación: 16 Agosto 2015, 13:17 pm por ivancea96 » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
getline()
Programación C/C++
Geek7 3 11,573 Último mensaje 29 Julio 2010, 20:52 pm
por Geek7
Ayuda! Por favor. Tengo problema con memoria dinámica en c++ y función getline
Programación C/C++
DeathStar92 0 2,090 Último mensaje 25 Noviembre 2012, 19:56 pm
por DeathStar92
getline() !!!
Programación C/C++
chicainge 2 3,147 Último mensaje 14 Septiembre 2014, 19:22 pm
por chicainge
ayuda con getline
Programación C/C++
EdgarKrieger 3 3,081 Último mensaje 26 Febrero 2016, 23:50 pm
por class_OpenGL
Ayuda error con la función getline
Programación C/C++
Guayavas 1 3,027 Último mensaje 8 Octubre 2017, 11:50 am
por ivancea96
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines