Форум вопросов и ответов

Форум вопросов и ответов (https://www.otvetnemail.ru/)
-   Продолжение старого архива (https://www.otvetnemail.ru/prodolzhenie-starogo-arhiva-804/)
-   -   Переполнение в С\С++ (https://www.otvetnemail.ru/prodolzhenie-starogo-arhiva-804/perepolnenie-v-s-s-350641/)

Guest 30.09.2011 16:35

Переполнение в С\С++
 
Вообщем вопрос из разряда общих.Известно что в Си\С++ есть глобальная переменная errno, которая устанавливается (например мат. ф-ями) при переполнении в состояние макроса ERANGE. Есть также глоб. переменная math_errhanding, которая также принимает в зависимости от конкретного случая значение соответствующего макроса. Но это все при работе с мат. библиотекой.Вопрос в следующем. Как контролировать переполнение, напр. обыкновенной интовой переменной, если она, допустим в цикле, принимает какое-то значение вне допустимого диапазона (понятно, что она тогда становиться отрицательной)?Я не знаю Ассемблера, но мне известно что есть такой флаг переноса, который если совпадает со знаковым битом - то переполнения не произшло, иначе оно имело место. Как выполнить такую проверку в Си или в Си++ (или комплектом из Студии)? Спасибо.


Часовой пояс GMT, время: 16:12.


© www.otvetnemail.ru - Форум вопросов и ответов.