Я новичок в C++
. У меня были некоторые знания о C
, и я знаю, что не следует предполагать, что C
правила такие же, как C++
. Я просто ищу такое же решение.
например В C, когда мы используем:
int a;
if (scanf ("%d", &a) != 1);
, чтобы проверить, правильно ли введено значение. Например, если вместо целого числа в качестве входных данных был взят символ, это скажет нам scanf
не удалось принять целое число в качестве входных данных.
, но в C++
я отладил этот код, когда дал ввод m
для программирования:
int a;
cin >> a;
и он назначил * От 1018 * до a
, но я сделал то же самое с scanf
, и значение a
было -858993460
. (В то время как значение по умолчанию a
в обоих языках было -858993460
)
, поэтому вот моя проблема, как я могу узнать, если cin
не удалось принять допустимый ввод? и обычно ли, 0
присваивается a
в C++
коде? и если обычно, как я могу узнать, что введенные данные действительно 0
или были результатом сбоя? Есть ли способ проверить успешность cin
?
PS: извините, если вопрос глупый. Я компетентно новичок в c++
.