<money_format> |
Описание
string money_format ( string format, float number )money_format() форматирует число number как денежную величину. Эта функция вызывает функцию strfmon языка C, но позволяет преобразовать только одно число за один вызов.
Замечание: Функция money_format() определена только если в системе присутствует функция strfmon. Например, в Windows она отсутствует, поэтому money_format() не определена в Windows.
Описание формата состоит из:
символа %
необязательных флагов
необязательной ширины поля
необязательной точности до запятой
необязательной точности после запятой
обязательного описателя преобразования
Флаги. Могут быть использованы следующие флаги:
- = f
Символ = , за которым следует еще один символ, задает символ заполнения. По умолчанию пробел.
- ^
Запрещает группировку символов (определяемую текущей локалью).
- + или (
Задает способ форматирования положительных и отрицательных значений. При использовании + будут использоваться аналоги символов + и – из текущей локали. Если указана ( , отрицательные числа будут заключены в скобки. По умолчанию + .
- !
Подавляет вывод символа валюты.
- –
Если этот флаг задан, поля будут выравнены влево, вместо используемого по умолчанию выравнивания вправо.
Ширина поля.
- w
Строка из десятичных цифр, задающая минимальную ширину поля. Поле будет выравнено вправо, если не указан флаг – . Значение по умолчанию – 0 (ноль).
Точность до запятой.
- # n
Максимальное количество цифр (n ), которое ожидается до запятой. Это обычно используется при выводе значений одно под другим, чтобы десятичные точки распологались в одной колонке, при этом используется символ заполнения, если число цифр меньше n . Если число цифр больше n , этот параметр игнорируется.
Если группировка не была запрещена флагом ^ , разделители групп будут вставлены перед добавлением символов заполнения. Разделители групп не вставляются между символами заполнения, даже если заполнитель – цифра.
Для обеспечения выравнивания, все символы, выводимые до или после числа, такие как сивол валюты или знак, будут дополнены пробелами до одинаковой ширины.
Точность после запятой .
- . p
Точка, за которой следует число знаков, выводимых после запятой. Если значение p рано нулю, десятичная точка и цифры после нее не будут выводиться. Если этот параметр отсутствует, число знаков после запятой определяется текущей локалью. Перед форматированием число округляется до указанного количества знаков.
Описатель преобразования .
- i
Используется международный денежный формат из текущей локали (например, для американской локали: USD 1,234.56).
- n
Используется национальный денежный формат из текущей локали (например, для локали de_DE: DM1.234,56).
- %
Вставляет символ % .
Замечание: На работу этой функции влияет установка категории LC_MONETARY текущей локали. Перед использованием этой функции установите нужную локаль с помощью setlocale().
Символы перед и после описания формата возвращаются без изменений.