-
- Пример: il-2(443 знак., 16.10.2019 11:47 - 13:02)
- вообще странно. чот мне казалось, что сначала операнды промотятся до инта. а потом уже вычитание. если ж вычитать флоат из инта, сначала же всё конвертится во флоат, а потом уже матоперация. так же? дальше, результат uint16 - uint16 должен быть Mahagam(186 знак., 16.10.2019 12:51)
- Век живи - век учись. "... операнды приводятся к некоторому общему типу, который также является и типом результата" © K&R - SciFi(16.10.2019 13:15, ссылка)
- Век перечитывай) - Mefod(16.10.2019 13:25)
- Все правильно. И я про то же. Немного подправил свой ответ выше, чтобы было понятней. - il-2(16.10.2019 12:59)
- Век живи - век учись. "... операнды приводятся к некоторому общему типу, который также является и типом результата" © K&R - SciFi(16.10.2019 13:15, ссылка)
- Все понял, спасибо. - Mefod(16.10.2019 12:06)
- вообще странно. чот мне казалось, что сначала операнды промотятся до инта. а потом уже вычитание. если ж вычитать флоат из инта, сначала же всё конвертится во флоат, а потом уже матоперация. так же? дальше, результат uint16 - uint16 должен быть Mahagam(186 знак., 16.10.2019 12:51)
- Что-то я и сам затупил. Если tick == 0xFFFF, то Tim7_Get_mks() - tick == (int)0xFFFF****, то есть отрицательное число. Из цикла сложно будет вырваться. - SciFi(16.10.2019 11:36 - 11:46)
- Потому, что у тебя 32-битная платформа и все вычисления приводятся к int, если имеют более "узкий" тип. На 16-битной такой код прокатил бы. - fk0(16.10.2019 11:37)
- Компилер создаёт в стеке временную переменную для хранения результата вычитания и последующего сравнения. evgeniy1294(211 знак., 16.10.2019 11:46)
- Пример: il-2(443 знак., 16.10.2019 11:47 - 13:02)