Я пишу приложение, в котором есть этот код, где t-> tick - это float:
usleep(1000);
t->tick = t->tick + 0.001;
printf("tick is %f, firing time is %f\n", t->tick, t->firing_time);
я обнаружил, что в usleep есть ошибка?
tick is 0.313000, firing time is 2.000000
tick is 0.314000, firing time is 2.000000
tick is 0.314999, firing time is 2.000000
tick is 0.315999, firing time is 2.000000
Как избавиться от этой ошибки?