Шаг 540.
Библиотека STL. Интернационализация. Числовое форматирование. Форматирование времени и даты (общие сведения)

    На этом шаге мы перечислим некоторые параметры, используемые для форматирования даты и времени.

    Фацеты time_get и time_put из категории time предоставляют средства разбора и форматирования времени и даты. Функции, выполняющие эти операции, работают с объектами типа tm, определяемого в заголовочном файле <ctime>. Объекты не передаются напрямую; в аргументах передаются указатели на них.

    Оба фацета из категории time в значительной степени зависят от функции strftime() (также определяемой в заголовочном файле <ctime>). Преобразование объекта tm к текстовому представлению описывается строкой, содержащей спецификаторы формата. Краткая сводка спецификаторов приведена в таблице 1. Эти же спецификаторы используются фацетом time_put.

Таблица 1. Спецификаторы формата для функции strftime()
Спецификатор Смысл Пример
Сокращенное название дня недели Mon
Полное название дня недели Monday
%b Сокращенное название месяца Jul
Полное название месяца July
Представление даты и времени для текущего локального контекста Jul 12 21:53:22 1998
%d День месяца 12
Час (по 24-часовой шкале) 21
%I Час (по 12-часовой шкале) 9
%j День года 193
%m Порядковый номер месяца 7
Минуты 53
Обозначение половины суток (am или рm) pm
%S Секунды 22
%U Номер недели, начиная с первого воскресенья 28
%W Номер недели, начиная с первого понедельника 28
%w Порядковый номер дня недели (воскресенье==0) 0
Представление даты для текущего локального контекста Jul 12 1998
Представление времени для текущего локального контекста 21:53:22
Год (без указания века) 98
%Y Год (с указанием века) 1998
%Z Часовой пояс MEST
%% Литерал % %

    Конечно, точный вид строки, созданной функцией strftime(), зависит от текущего локального контекста. Примеры в таблице приведены для локального контекста "С".

    На следующем шаге мы рассмотрим лексический разбор даты и времени.




Предыдущий шаг Содержание Следующий шаг