Buongiorno a tutti, stamattina testando un mini-esercizio per provare cin.eof () mi sono imbattuta in un problema che non riesco a capire. Questo è il codice (usando Visual Studio):
1#include <iostream>
2using namespace std;
3
4int main() {
5 int numero=0,FALSO=0;
6 cout << "Questo programma testa il CTRL+Z "<<endl;
7 do {
8 cin >> numero;
9 cout << "Hai scritto il numero " << numero <<endl;
10 } while (!cin.eof());
11 cout << "Fine, hai premuto CTRL+Z";
12 system("pause");
13}
Se io scrivo dei numeri separati dall'Invio, il programma termina correttamente (ad es: 1(INVIO)2(INVIO)CTRL+Z). Se scrivo una sequenza di numeri separati dallo spazio ad es: 1 2 3 CTRL+Z
il programma mi va in LOOP stampando infinite volte "Hai scritto il numero 3", ovvero l'ultimo numero. Quale potrebbe essere il problema?
Grazie mille!