Мне нужно значение double
перевести в строку с определенным количеством символов до и после запятой. Я использую функцию snprintf()
:
char buffer[400];
int n = snprintf(buffer, 400, "%.0f", 1234.5678);
В строке формата можно указать количество символов после запятой, и функция выведет либо округленный вариант, либо дополнит вывод нулями.
Могу ли я с помощью этой функции регулировать вывод количество знаков до запятой? Например:
01234.5678 // 5 знаков до запятой, 4 знака после запятой
-1234.5678 // 5 знаков до запятой, 4 знака после запятой
-01234.5678 // 6 знаков до запятой, 4 знака после запятой
Если с помощью snprintf
нельзя получить такой результат, то, может быть, есть другие функции в stl
или стандартной библиотеке языка C?
double d = 1234.5678;
snprintf(...,"%010.4lf\n",d);
snprintf(...,"%010.4lf\n",-d);
snprintf(...,"%011.4lf\n",-d);
cout << setprecision(4) << setfill('0') << fixed << internal;
cout << setw(10) << d << endl;
cout << setw(10) << -d << endl;
cout << setw(11) << -d << endl;
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Вот пример реализации ОПЗ, возможно местами кривоКак из этого сделать бинарное дерево? У меня идея была построить двумерный массив и уже...
Есть код, который расписывает матрицу и считает суммы диагоналей(будет ниже) В коде есть функция которая задаёт размер матрицы с клавиатуры(Матрица...