Я нашел интересный формат для печати бесконечных строк фиксированной длины следующим образом:
char newstr[40] = {0};
sprintf(newstr,"%.*s", sizeof(mystr), mystr);
Итак, я думаю, может быть, есть путь под командой printf для печати числа с плавающей точкой...
"% 8.2f"
чтобы иметь возможность выбирать число десятичных знаков с целым числом.
Что-то вроде этого:
sprintf(mystr, "%d %f", numberofdecimals, floatnumbervalue)
EDIT - Решение:
(для округления и очистки числа с плавающей точкой до желаемой точности).
int precision = 2;
char kolf[16] = {0};
sprintf(kolf, "%8.*f", precision, mystruct.myfloat);
float kol = atof(kolf);