Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.10;
Скачать: CL | DM;

Вниз

операции сравнения   Найти похожие ветки 

 
MANGOL   (2004-09-22 14:28) [0]

в прошлом посте (который почему-то тут же удалили :)) операция следующего вида
if ((w - x - a) + (y - a)) >= w div 2

возвращала true, хотя в левой чясти получался -1, а в правой +4. Оказалось, это из-за того, что в исходной функции параметры x,y,a,w были объявлены как BYTE, т.е. (наверно) в левой чясти вместо -1 получалось 255. После замены типа параметров на Integer всё стало работать корректно.

Так вот, у меня вопрос: если все эти переменные были бы различных типов, от byte до extended, как бы работала вся эта фигня? каков механизьм??

мож, кто знает? спасиб.


 
Суслик ©   (2004-09-22 14:29) [1]

ты тоже знаешь - смотри окно cpu (ctrl+alt+c).
имхо это главный источник информации на вопросы: "как это работает"


 
Amoeba ©   (2004-09-22 14:33) [2]

Переменная W должна быть или целой знаковой, Y - или целой знаковой, или с плавающей точкой.


 
DiamondShark ©   (2004-09-22 14:34) [3]

Виражение вычисляется в минимальном типе, вмещающем все операнды.


 
MANGOL   (2004-09-22 14:37) [4]

спасибо всем.
век живи - век учись :)



Страницы: 1 вся ветка

Текущий архив: 2004.10.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.041 c
1-1096277913
DelphiLexx
2004-09-27 13:38
2004.10.10
Зная ID потока получить Handle его окна.


1-1096252846
Никита
2004-09-27 06:40
2004.10.10
255 0 16 - как разобрать?


1-1095768418
hawkins
2004-09-21 16:06
2004.10.10
Ошибка в пр-ме: ...File access denied...


6-1091398924
НовиЧок
2004-08-02 02:22
2004.10.10
Убить фрейм в WebBrowser e


14-1095281471
Marser
2004-09-16 00:51
2004.10.10
Рома-Динамо