2014-12-19 2 views
0

естьПроверить, если переменная является числом или не в C++

int a; 

Пользователь вводит значение, но это значение должно быть передано в функцию, которая проверяет, если пользователь ввел число, или если пользователь вошел что-то еще, без сбоя программы.

cin.good() 

будет НЕ работа, поскольку она является переменной «а», который я передаю в функцию. Проверка должна проводиться внутри функции

bool validateInteger(int a) 
{ 
??? 
} 

Как проверить, является ли целое число или нет?

+5

«int» является ** всегда ** целым числом. Если это не целое число, вы не можете зайти так далеко. – SLaks

+0

Возможно, вы хотите проверить, содержит ли строка символов допустимое представление целого числа? 'sscanf' может это сделать. –

+0

То, что вы пытаетесь сделать, невозможно в том, как работает C++. –

ответ

4

Если вы можете передать его в свою функцию, это int (или имеет неявное преобразование в int). В противном случае он не был бы скомпилирован. Поэтому нет необходимости в проверке.

Смежные вопросы