|
|
|
| Как сделать считывание с консоли так, чтобы вводить можно было абсолютно любые данные - будь то цифры или буквы.
Проблема в том, что когда через scanf отлавливаю ввод цифр, при вводе букв начинается зацикливание.
Какой код сделает возможным ввод любых данных с возможностью отлова ошибок? | |
|
|
|
|
|
|
|
для: nikolayers
(06.10.2012 в 12:46)
| | Читайте в строку или лишь потом преобразуйте данные в числа. | |
|
|
|
|
|
|
|
для: nikolayers
(06.10.2012 в 12:46)
| | Этот метод считывает всё до первого пробела, табуляции, новой строки и т.д.
string mobileCarrier;
cin >> mobileCarrier;
|
Этот метод считывает всё, пока пользователь не нажмёт ENTER:
string sentence;
getline(cin, sentence);
|
Полный текст программы:
#include <iostream>
#include <string>
using namespace std;
int main()
{
/*
string mobileCarrier;
cin >> mobileCarrier;
cout<<"mobileCarrier:"<<mobileCarrier<<endl;
*/
string sentence;
getline(cin, sentence);
cout<<"sentence:"<<sentence<<endl;
return 0;
}
|
Взял из методички: MIT6_096IAP11_lec10(Advanced topics II) | |
|
|
|