Форум: "Основная";
Текущий архив: 2004.10.10;
Скачать: [xml.tar.bz2];
Внизоперации сравнения Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.031 c