Я совершенно новичок в ie программировании на C ++. Итак, я просто пробовал кодировать базовый c C ++ и написал следующую программу:
#include <iostream>
using namespace std;
int main()
{
int number1;
float number2;
cout << "Enter number1 (integer)\r\n";
cin >> number1;
cout << "Enter number2 (float)\r\n";
cin >> number2;
cout << "Number1 is "<<number1<<"Number2 is "<<number2<<endl;
return 0;
}
Когда я выполняю приведенный выше код и неправильно говорю число вроде «20,7» вместо целого числа что он ожидает, когда он запрашивает number1,
, второй оператор cin пропускается, и номер 1 печатается как 20, а number2 печатается как 0,7.
Почему это так? Я ожидал, что первый cin должен просто сделать 20,7 как 20 и сохранить его в number1, а второй cin не должен пропускаться и запрашивать у меня ввод.
Это неправильное ожидание? И почему это происходит?