Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: fehnet en 16 Julio 2013, 10:21 am



Título: EOF con string y getline C++
Publicado por: fehnet en 16 Julio 2013, 10:21 am
Código:
#include <iostream>
#include <string>
using namespace std;

int main()
{
    string word;
    cout << "palabra: ";
    getline(cin, word);
    cout << word << endl;
   
    cin.clear();
   
    cout << "otra: ";
    getline(cin, word);
    cout << word << endl;
}

Por qué cuando introduzco
HolaCtrl+D
No me deja meter la otra palabra?

THK


Título: Re: EOF con string y getline C++
Publicado por: fehnet en 16 Julio 2013, 13:44 pm
En Ubuntu funciona correctamente ,en mac os x con xcode es donde falla. WTF?


Título: Re: EOF con string y getline C++
Publicado por: amchacon en 16 Julio 2013, 14:13 pm
Prueba esto:

Código
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7.    string word;
  8.    cout << "palabra: ";
  9.    getline(cin, word);
  10.    cout << word << endl;
  11.  
  12.    cin.get();
  13.  
  14.    cout << "otra: ";
  15.    getline(cin, word);
  16.    cout << word << endl;
  17. }


Título: Re: EOF con string y getline C++
Publicado por: fehnet en 16 Julio 2013, 14:20 pm
Tampoco :(

Ni c.get(), ni getline, ni scanf.... vamos, que ha cerrado el Stream no? Es posible abrir nuevamente el flujo de entrada (cin) sin necesidad de reiniciar el programa?