float pi = 3.1415926;
printf(«%.0f\n\r», pi); // 3
printf(«%.1f\n\r», pi); // 3.1
printf(«%.2f\n\r», pi); // 3.14
printf(«%.3f\n\r», pi); // 3.142
printf(«%.4f\n\r», pi); // 3.1416″
В то же время:
«printf(«%.1f\n\r», pi); // 3.1
printf(«%.2f\n\r», pi); // 3.14″
Насколько я вижу, округление происходит по математическим правилам, в том числе при округлении пятерки. Где ошибка: в примере или в описании?
Не понял, почему 10 в выводе в каждой строке?
Точно #elif ? Что-то мне подсказывает, что здесь должно быть либо #else #ifdef STM32, либо просто #ifdef STM32