Cin не может работать при переполнении номера
Я хочу проверить номер с длинным длинным типом данных.
Ниже приведен мой код. Проблема в том, что если я введу число выше 9,223,372,036,854,775,807, функция не остановится на cin, поэтому контурная схема будет продолжать работать.
Что я уже пробовал:
#include <iostream> using namespace std; // A[100]={0}; long long number=0; int main() { for(int x=0; x<1000;x++) { cout<<"enter a number"; cin>>number; long long Number_out=number; cout<<endl<<"Number out"<<Number_out<<endl; } }
jeron1
Вы ожидаете вырваться из цикла for, если cin потерпит неудачу? Может быть, взглянете сюда.
c++ - правильный способ использования cin. fail () - переполнение стека[^]