Форум: "Основная";
Текущий архив: 2005.11.13;
Скачать: [xml.tar.bz2];
ВнизПомогите с Invalid floating point operation!! Найти похожие ветки
← →
Smarty (2005-10-23 14:59) [0]Народ!
Подскажите плиз что я делаю не так?
имеем переменные:
MaxRowId:integer;
r:double;
При попытке выполнить: r:=MaxRowId/2 выскакивает ошибка "Invalid floating point operation". Что я делаю не так?
причем если перед этим вычислением постваить ShowMessage(MaxRowId) все работает.
← →
Loginov Dmitry © (2005-10-23 17:04) [1]Ведь ясно же написано: "Invalid floating point operation". Сделай соответствующие выводы.
← →
Юрий Зотов © (2005-10-23 17:30) [2]
procedure TForm1.FormCreate(Sender: TObject);
var
MaxRowId: integer;
R: double;
begin
MaxRowId := Handle;
R := MaxRowId / 2;
ShowMessage(FloatToStr(R))
end;
И все работает. Значит, ответ на вопрос "Что я делаю не так?" нужно искать в другом месте кода.
← →
Smarty (2005-10-23 18:14) [3]:) я тоже был учень удивлен такому повороту событий, однако в MaxRowId всегда находилось нормальное ненулевое значение, да и к простому делению на 2 особо не придерешься. Может Delphi глюканул? В любом случае всем спасибо! А я обошелся без этого деления :)
← →
han_malign © (2005-10-24 12:11) [4]Были такие приколы, WinAPI в некоторых местах(чаще в вызовах kernel32) изменяет флаги сопроцессора - Delphi где может это фиксит(SafeLoadLibrary например), но в основном полагается на эксклюзивное владение сопроцессором(и глобально неизменное состояние), что иногда приводит к некоректной работе System._FSafeDivide.
Спасаетasm FINIT end;
перед делением...
З.Ы. Глюк идет еще со времен BP7.0/D1 под DPMI.
← →
han_malign © (2005-10-24 12:13) [5]З.З.Ы. Причем глюк всегда именно при делении целых с приведением к плаващей точке...
← →
umbra © (2005-10-24 12:16) [6]
> Invalid floating point operation
А у меня такое часто случалось на D7, когда с датами работал и брейкпойнты в процедурах обработки дат ставил. Ставишь точку прерывания - получаешь исключение, убираешь - все работате как часы.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.11.13;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.037 c