Как проверить граничное условие и распечатать сообщение на языке C? Например, пусть sizeof(int)
= 4 байта, как проверить, является ли пользовательское значение ввода более 2^31
?Вне граничных условий
ответ
Если целочисленное переполнение встречается, то значение суммы становится < 0. Попробуйте этот код:
void checkOverflow()
{
int sum = 0;
int digits = 10000000000; // one bilion
for (int i = 0; i < 10; i++)
{
sum += digits;
if (sum < 0)
{
printf("Integer overflow - %i", sum);
break;
}
}
}
С тех пор, когда C начал иметь конструкцию/метод под названием 'cout' ??? Кроме того, этот код не будет компилироваться, так как вы не возвращаете значение int, тогда как ваша функция определена для возврата int. –
Подписанное целочисленное переполнение имеет неопределенное поведение. Вы не можете проверить это после факта. – melpomene
Простите, я добавлю код, не компилируя его. Добавлены исправления. Но в любом случае у вас есть идея. –
- 1. Задание странных граничных условий
- 2. Обработка граничных условий в OpenCL/CUDA
- 3. Оптимизация расчета расстояния Python при учете периодических граничных условий
- 4. Инструменты для тестирования единиц для создания граничных условий
- 5. эффективная функция знака в python для случая периодических граничных условий
- 6. передача тепла для выполнения граничных условий сферических координат
- 7. Реализация периодических граничных условий интегратора PDE в C++
- 8. Удержание условий Python вне цикла?
- 9. Итерация для цикла вне начальных условий
- 10. MySQL возвращает Datapoint вне условий, заданные
- 11. Обработка граничных ячеек матрицы
- 12. Настройка граничных условий для объекта для перемещения по пути путем перетаскивания объекта
- 13. Является ли «тестирование граничных условий» в пользовательском интерфейсе (максимальная длина TextBox) хорошей идеей?
- 14. Как сохранить разреженную матрицу для умножения матрицы-вектора, когда известны некоторые значения граничных условий?
- 15. Применение граничных условий в конечно-разностном решении для уравнения теплопроводности и Crank-Nicholson
- 16. 3 граничных дна для одного div?
- 17. C++ Аргументы для граничных функций SGX Enclave
- 18. Создать замкнутый многоугольник из граничных точек
- 19. больше граничных мест для более точной формы
- 20. Camunda REST API: событие сбрасывания граничных ошибок
- 21. Python: добавление граничных значений в циклы while
- 22. Установка граничных пределов для перетаскиваемого объекта
- 23. Как создать дуги на граничных точках ворона?
- 24. установка параметров обнаружения граничных поверхностей opencv
- 25. Как определить использование граничных сокращений MATLAB?
- 26. Сочетание граничных шейп-файлов в R
- 27. Поиск содержащихся граничных областей из импорта Excel
- 28. PHP: Отправка граничных значений в заголовках скручивания
- 29. Как перечислить список граничных ограничений Xsd?
- 30. Уличные запросы выполняются с граничных узлов
где пользовательский ввод значение является строкой? Если да, то что вы используете в настоящее время для синтаксического анализа строки. Показать код. – weston
Prgm получает сумму цифр целого числа. Ввод принимается только как целое, но как поставить проверку, есть ли входное значение за пределами диапазона? – user299520
Вам нужно протестировать ввод пользователей, прежде чем он будет помещен в 'int', после чего вы можете проверить между' 2^31-2^32', но они могли бы ввести большее число. Это также зависит от кода, который вы используете для преобразования от пользователя 'char *' к 'int', поэтому повторяю, покажите код !!! – weston