• Viernes 8 de Noviembre de 2024, 23:05

Autor Tema:  Cin Y Getline Con Strings En C++  (Leído 1507 veces)

ngb

  • Nuevo Miembro
  • *
  • Mensajes: 21
    • Ver Perfil
Cin Y Getline Con Strings En C++
« en: Domingo 19 de Marzo de 2006, 16:46 »
0
Buenas, he comprobado k en C++ cuando lees de pantalla un string ya sea con cin o getline(y delimitador '\n') si este contiene el caracter espacio, los siguientes caracteres no son leidos y por tanto no son almacenados en la variable string. Incluso llegue a probar con delim '\0' en un acto de desesperacion. Por lo que tengo entendido estas funciones dan bastantes problemas. ¿Que se usa para solucionar este error?

Pongo un ejemplillo para que me entendais si no quedo claro:

string s;
cin>>s; //Introduces por pantalla: Hola Mundo
cout<<s; //Sale por pantalla: Hola


gracias por adelantado

edito: uso VC++ 6.0

desgraciado

  • Miembro activo
  • **
  • Mensajes: 30
    • Ver Perfil
    • http://desgrasoft.esp.st/
Re: Cin Y Getline Con Strings En C++
« Respuesta #1 en: Domingo 19 de Marzo de 2006, 18:31 »
0
hola... aqui esta un pequeño ejemplo.
Código: Text
  1.  
  2. #include &#60;iostream&#62;
  3. #include &#60;string&#62;
  4.  
  5. using namespace std;
  6.  
  7. int main()
  8. {
  9.   string buffer;
  10.   cout &#60;&#60; &#34;introduzca un linea de texto&#34; &#60;&#60; endl;
  11.   getline(cin, buffer);
  12.   cout &#60;&#60; buffer &#60;&#60; endl;
  13.   system(&#34;pause&#34;);
  14.   return 0;
  15. }
  16.  
  17.  

ngb

  • Nuevo Miembro
  • *
  • Mensajes: 21
    • Ver Perfil
Re: Cin Y Getline Con Strings En C++
« Respuesta #2 en: Jueves 13 de Abril de 2006, 12:51 »
0
Hoy k he vuelto a pasar x aki quiero confirmar que con el getline me funciono pero que si alguien lo va a usar use antes del getline un fflush(stdin); para vaciar el buffer.

gracias desgraciado x aquella respuesta