Negacja zmiennej typu Double

0

Mam problem z negacją zmiennej typu Double. Próbowałem takich rzeczy:

D := -D; // nie działa
D := -1 * D; //też nie

Może dokładniej wyjaśnię. Działa, tylko mam wrażenie, że neguję bity i wychodzi mi śmieszny wynik (w postaci wykładniczej zazwyczaj, np. 123E123 zamiast np. -2). Wiem, że problem jest banalny, ale mnie zawsze najwięcej kłopotu sprawiały rzeczy banalne :|.

0

hmmm u mnie pod D7 coś takiego działa normalnie:

var
a : Double;
begin
a := 2;
a := -a;
if a = -2 then ShowMessage(CurrToStr(a));
end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1