А чего б не использовать функцию isdigit...
C++ |
1
2
3
4
5
6
7
8
| char ch, mass[20] = {0};
int res, i = 0;
while((ch=getch()) != 13) {
if(isdigit(ch)) mass[i++] = ch;
else {}
}
mass[i] = '\0';
res = atoi(mass); |
|
Если i = 0 значит ничего не было введено. Как обрабатывать ошибки это другой вопрос и можно как угодно