Linux программирование в примерах
Шрифт:
Как вы можете видеть,
Форматируемые значения должны иметь тип
Гибкость — и соответственно определенная сложность — сопровождают многие функции API, разработанные для POSIX, и
Флаги перечислены в табл. 13.2.
Таблица 13.2. Флаги для
| Флаг | Значение |
|---|---|
=с | Использовать символ с в качестве символа числового заполнения слева. Символом по умолчанию является пробел. Обычной альтернативой является 0 |
^ | Запретить использование символа группировки (например, запятой в Соединенных Штатах) |
( | Отрицательные значения заключать в скобки. Несовместим с флагом + |
+ | Обрабатывать положительные/отрицательные значения обычным образом. Использовать положительные и отрицательные знаки локали. Несовместим с флагом ( |
! | Не включать символ валюты. Этот флаг полезен, если вы хотите использовать strfmon для более гибкого форматирования обычных чисел, чем это предусматривает sprintf |
– | Выровнять результат слева. По умолчанию используется выравнивание справа. Этот флаг не действует без указания ширины поля |
Ширина поля является строкой десятичных цифр, представляющих минимальную ширину. По умолчанию использует столько символов, сколько необходимо, основываясь на оставшейся части спецификации. Значения, меньшие ширины поля, дополняются пробелами слева (или справа, если указан флаг '
Точность слева состоит из символа
141
В стандарте используется технический термин radix point (позиционный разделитель), поскольку числа с другим основанием счисления также могут иметь дробные части. Однако, для денежных значений можно довольно безопасно использовать термин 'decimal point' (десятичный разделитель) — Примеч. автора.
Наконец, точность справа состоит из символа '
Помимо
Вот что происходит для двух различных локалей: в одной есть разделитель тысяч, в другой нет:
На время написания лишь GNU/Linux и Solaris поддерживают флаг
13.2.6. Пример: форматирование числовых значений в
Мастер 11
11. Мастер
Фантастика:
боевая фантастика
попаданцы
технофэнтези
аниме
фэнтези
рейтинг книги
Ваше Сиятельство
1. Ваше Сиятельство
Фантастика:
фэнтези
попаданцы
рейтинг книги
Газлайтер. Том 29
29. История Телепата
Фантастика:
боевая фантастика
попаданцы
аниме
рейтинг книги
Газлайтер. Том 15
15. История Телепата
Фантастика:
боевая фантастика
попаданцы
рейтинг книги
Бестужев. Служба Государевой Безопасности. Книга третья
3. Граф Бестужев
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Бояръ-Аниме. Газлайтер. Том 35
35. История Телепата
Фантастика:
аниме
боевая фантастика
фэнтези
рейтинг книги
На границе империй. Том 9. Часть 2
15. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
рейтинг книги
Наследник старого рода
1. Живой лёд
Фантастика:
фэнтези
рейтинг книги
Младший сын
1. Государи московские
Научно-образовательная:
история
рейтинг книги
Кодекс Охотника. Книга II
2. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
боевая фантастика
юмористическое фэнтези
рейтинг книги
Инженер Петра Великого 6
6. Инженер Петра Великого
Фантастика:
альтернативная история
фэнтези
попаданцы
рейтинг книги
Кодекс Охотника. Книга XVIII
18. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Собрание сочинений (Том 1)
Детские:
прочая детская литература
рейтинг книги