А что если просто * 100 , положить в уинт16/уинт32?
у меня есть что-то типа такого решения в лоб, если еще надо могу скинуть, при вникании можно расширить количество символов, у меня оно на 5 чисел до запятой и на 2 после, но быстродействием там скорее всего и не пахнет)
Смотря какая среда разработки. Если поддерживается С++17 нормально то можно такую вставку влепить и обернуть в extern"C" в хидере
STM32CubeIDE использую. Если умножать на 100, паковать в юинт16 и конвертировать “sprintf (testvoltagevaluestr, "%u", testvoltagevalue);” то можно получить реальное значение без запятой.
у меня есть что-то типа такого решения в лоб, если еще надо могу скинуть, при вникании можно расширить количество символов, у меня оно на 5 чисел до запятой и на 2 после, но быстродействием там скорее всего и не пахнет)