У меня странная и неожиданная проблема со сравнением двух переменных в моем C-коде. Код написан с использованием Keil для микроконтроллера STM32F407. Обратите внимание на следующее:
if ( f1 > u1 )
{
// do some ...
}
f1 - переменная с плавающей точкой, а u1 - целое число без знака. В режиме отладки f1 = 0,1 и u1 = 1600, но условие if возвращает true.
Кто-нибудь может решить проблему?