Есть ли способ установить "минимальное" количество десятичных разрядов, которое будет выводить std :: ostream?
Например, скажем, у меня есть две неизвестные двойные переменные, которые я хочу напечатать (значения добавлены здесь для иллюстрации):
double a = 0;
double b = 0.123456789;
Я могу установить максимальную десятичную точность, чтобы вывести b
точно
std::cout << std::setprecision(9) << b << std::endl;
>>> 0.123456789
Есть ли способ установить «минимальную» точность (минимальное количество знаков после запятой), сохраняя при этом «максимальную» точность, чтобы
std::cout << a << std::endl << b << std::endl;
выход
0.0
0.123456789
не
0
0.123456789
Спасибо!
Фил
краткий ответ на это "Нет". Поток имеет только одну настройку точности, без возможности различить максимальную и минимальную точность. Спасибо всем за щедрый совет!