Почему целочисленное деление на ноль создает сигнал ошибки с плавающей запятой (SIGFPE)?C++

Программы на C++. Форум разработчиков
Anonymous
 Почему целочисленное деление на ноль создает сигнал ошибки с плавающей запятой (SIGFPE)?

Сообщение Anonymous »

Сегодня я отслеживал исключение с плавающей запятой в коде, который я только что написал. Поиск занял некоторое время, потому что на самом деле это было вызвано взятием нулевого целочисленного мода. Очевидно, что выполнение чего-либо с нулевым модемом не будет определено, но мне показалось странным, что ошибка настолько вводит в заблуждение. Что такое в операторе C++ по модулю, который будет использовать плавающую запятую для двух целых чисел? (Я использую gcc 4.3.2)

Вот простая программа, демонстрирующая ошибку.

int main()
{
int a=3,b=0;
int c=a%b;
return 0;
}


Подробнее здесь: https://stackoverflow.com/questions/108 ... nal-sigfpe

Вернуться в «C++»