Mam problem z poniższym programem.
#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
int main()
{
int i;
char ch;
string str;
while (cin.get(ch) && ch != '@')
str.push_back(ch);
cout << endl << str;
cin.ignore();
cin.get();
return 0;
}
Program ma za zadanie wczytywanie ciągu znaków aż do znaku "@" a następnie wyświetlenie tego co wczytal. Niby działa poprawnie, ale problem pojawia się kiedy po wpisaniu "@" wpisze jeszcze inne znaki i dopiero zatwierdzę enterem. Wtedy wykonuje to co ma do wykonania i od razu się wyłącza bez czekania na znak. Próbowałem z cin.sync(), cin.clear(), wstawiać to do pętli itd, ale nic nie działa. Proszę o pomoc.