Если речь идёт про 64-битную винду, то всё очень просто: в ней Extended отображается на Double и соответственно может содержать не более 16-17 значащих цифр.avmaksimov писал(а):Суть проблемы в том, что максимальное значение Int64 - 9 223 372 036 854 775 807, а при любом преобразовании в число с плавающей точкой цифра 7 пропадает и остаётся только: 9 223 372 036 854 775 800 .
Конвертация Int64 с разделителем групп разрядов: неужели?!)
Модератор: Модераторы
А вот в XP-32 все чУдно - работает без потерь.iskander писал(а):Если речь идёт про 64-битную винду, то всё очень просто: в ней Extended отображается на Double и соответственно может содержать не более 16-17 значащих цифр.
может потому что там 80-ти разрядное число, а не 64-х?RRYTY писал(а):А вот в XP-32 все чУдно - работает без потерь.
Радует, что родной линукс работает как надо.
XP это уже анахронизм, под него софт делается только для обратной совместимости.
Остается признать, что девиз Lazarus "write once, compile anywhere" пока только девиз. И внимательнейшим образом тестировать все, что делается для виндопользователей.
XP это уже анахронизм, под него софт делается только для обратной совместимости.
Остается признать, что девиз Lazarus "write once, compile anywhere" пока только девиз. И внимательнейшим образом тестировать все, что делается для виндопользователей.
Дело вовсе не в XP, 32-битное приложение будет работать с Extended и на современных виндах.
Согласен. Но поставлять пользователю 32-битное приложение для 64-битной системы нехорошо.iskander писал(а):Дело вовсе не в XP, 32-битное приложение будет работать с Extended и на современных виндах.
