Я наблюдаю какое-то поведение, для которого мне трудно рассуждать.
У меня есть следующий фрагмент кода:
int timer_temp_var;
if ((timer_temp_var/1000.0) > 5.0)
{
//Do something
}
Эта часть приводит к ошибке ссылки.
>
> dld: warning: Undefined symbol _d_fle"
> dld: no output written make[1]: ***
> [app.elf] Error 1
Но при замене проверки на равенство:
if ((timer_temp_var/1000.0) < 5.0) // replace '>' with '<'.
Я не вижу проблем.
Также вместо деления на 1000.0, если я делаю на 1000 следующим образом:
if ((timer_temp_var/1000) > 5)
{
//Do something
}
Я не вижу проблем независимо от вида проверки на равенство.
Приложение скомпилировано для работы в операционной системе pSOS.
В чем причина такого поведения?