Спецификатор ширины Printf для поддержания точности значения с плавающей точкой

Есть лиprintf спецификатор ширины, который может быть применен к спецификатору с плавающей запятой, который автоматически форматирует выходные данные до необходимого числазначащие цифры такой, что при сканировании строки обратно, получается оригинальное значение с плавающей точкой?

Например, предположим, что я печатаюfloat с точностью до2 десятичные разряды:

float foobar = 0.9375;
printf("%.2f", foobar);    // prints out 0.94

Когда я сканирую вывод0.94У меня нет никаких гарантий соответствия стандартамдостану оригинал0.9375 значение с плавающей запятой назад (в этом примере я, вероятно, выиграл 'т).

Я хотел бы, чтобы способ сказатьprintf автоматически печатать значение с плавающей точкой на необходимое числозначащие цифры чтобы убедиться, что он может быть отсканирован до исходного значения, переданного.printf

Я мог бы использовать некоторые макросы вfloat.h ввывести максимальную ширину перейти кprintf, но есть ли уже спецификатор для автоматической печати на необходимое количествозначащие цифры - или хотя бы до максимальной ширины?

Ответы на вопрос(7)

Ваш ответ на вопрос