Как проверить корректность ввода целых чисел?

Какие символы допустимо использовать при вводе текста?
  • 26 марта 2024 г. 2:59
Ответы на вопрос 3
Для проверки корректности ввода целых чисел можно использовать следующие способы:

1. Проверить, что введённая строка состоит только из цифр и, возможно, знака минус (если число отрицательное).
2. Проверить, что введённая строка не содержит пробелов или других символов, кроме цифр и знака минус.
3. Использовать функции языка программирования для проверки ввода, например, функцию `isdigit()` для Python или `parseInt()` для JavaScript.

При вводе текста допустимо использовать следующие символы:
- Прописные и заглавные буквы латинского алфавита (A-Z, a-z)
- Цифры (0-9)
- Пробелы
- Знаки препинания (?, !, ., ;, :, и др.)
- Специальные символы (@, #, $, %, *, &, и др.)

Для каждого конкретного случая можно уточнить допустимые символы в тексте ввода, в зависимости от цели и требований программы.
Можно использовать strtol 
int parse(char* str, long* result) {
    char *end = NULL;
    *result = strtol(str, &end, 10);
    if (str == end || *end != '\0' || errno == ERANGE) {
        return -1;
    }
    return 0;
}


Пример:
int main() {
    long value;
    if (parse("12313", &value)) {
        printf("Ошибка");
    } else {
        printf("Результат: %ld", value);
    }
}
// 123 -> Результат: 123
// 123.0 -> Ошибка
try {
  (int)variable
}
catch (...) {
  // выводим ошибку
}
Похожие вопросы