Linux программирование в примерах
Шрифт:
int main(void) {
char buf[100];
time_t now;
struct tm *curtime;
time(&now);
curtime = localtime(&now);
(void)strftime(buf, sizeof buf,
"It is now %A, %B %d, %Y, %I:%M %p", curtime);
printf("%s\n", buf);
exit(0);
}
После запуска эта программа выводит что-то типа:
It is now Thursday, May 22, 2003, 04:15 PM
В табл. 6.2 предоставлен полный список описателей преобразования, их возможные альтернативные представления и их значения. Вдобавок стандарт C99 добавил к списку дополнительные описатели; новые для C99 описатели помечены символом .
Таблица 6.2. Описатели преобразования формата
strftime
| Описатель | C99 | Значение |
|---|---|---|
| %a | Локальное сокращенное название дня недели. | |
| %A | Локальное полное название дня недели. | |
| %b | Локальное сокращенное название месяца. | |
| %B | Локальное полное название месяца. | |
| %c, %Ec | Локальное «подходящее» представление даты и времени | |
| %C, %EC | Век (00–99) | |
| %d, %Od | День месяца (01–31) | |
| %D | То же, что %m/%d/%y | |
| %e, %Oe | День месяца. Одна цифра дополняется пробелом (1–31). | |
| %F | То же, что и %Y-%m-%d (формат даты ISO 8601) | |
| %g | Две последние цифры, основанной на неделе года (00–99). | |
| %G | Основанный на неделе год ISO 8601 | |
| %h | То же, что и %b | |
| %H, %OH | Час в 24-часовом цикле (00–23) | |
| %I, %OI | Час в 12-часовом цикле (01–12) | |
| %j | День года (001–366) | |
| %m, %Om | Месяц в виде числа (01–12). | |
| %M, %OM | Минута в виде числа (00–59) | |
| %n | Символ конца строки (' \n ') | |
| %p | Локальное обозначение a.m./p.m. | |
| %r | Локальное время в 12-часовом цикле | |
| %R | Тоже, что и %H:%M | |
| %S, %OS | Секунда в виде числа (00–60) | |
| %t | Символ табуляции (' \t ') | |
| %T | То же, что и %H:%M:%S (формат ISO 8601). | |
| %u, %Ou | Число дня недели ISO 8601, понедельник = 1 (1–7). | |
| %U, %OU | Номер недели, первое воскресенье является первым днем недели 1 (00–53) | |
| %V, %OV | Номер недели ISO 8601 (01–53) | |
| %w, %Ow | День недели как число, воскресенье = 0 (0–6). | |
| %W, %OW | Номер недели, первый понедельник является первым днем недели 1 (00–53) | |
| %x, %Ex | Локальное «подходящее» представление даты | |
| %X, %EX | Локальное «подходящее» представление времени. | |
| %y, %Ey, %Oy | Две последние цифры года (00–99) | |
| %Y, %EY | Год как число. | |
| %Z | Локальный часовой пояс или отсутствие символов, если сведения о часовом поясе недоступны | |
| %% | Простой % |
Локаль (locale) является способом описания местной специфики, принимая во внимание такие вещи, как язык, кодировка символов и значения по умолчанию для форматирования дат, времени, денежных сумм и т.д. Мы будем иметь с ними дело в главе 13 «Интернационализация и локализация». Пока достаточно понять, что результаты
strftime
для одной и той же форматирующей строки могут быть разными в зависимости от настроек текущей локали. Версии, начинающиеся с
%E
и %O
, предназначены для «альтернативного представления». В некоторых локалях есть несколько способов представления одних и тех же сведений; эти описатели предоставляют доступ к дополнительным представлениям. Если определенная локаль не поддерживает альтернативного представления, strftime
использует обычную версию. Многие Unix-версии
date
дают возможность предоставить в командной строке форматирующую строку, начинающуюся с символа '+
'. Затем date
форматирует текущие дату и время и выводит в соответствии с форматирующей строкой:
Поделиться:
Популярные книги
Законы Рода. Том 6
6. Граф Берестьев
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Газлайтер. Том 27
27. История Телепата
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Газлайтер. Том 14
14. История Телепата
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Вечный. Книга VII
7. Вечный
Фантастика:
боевая фантастика
рпг
попаданцы
5.00
рейтинг книги
Барон ломает правила
11. Закон сильного
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Неофит
3. Ушедший Род
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Неудержимый. Книга XXVII
27. Неудержимый
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Наследие Маозари 7
7. Наследие Маозари
Фантастика:
боевая фантастика
юмористическое фэнтези
постапокалипсис
рпг
фэнтези
эпическая фантастика
5.00
рейтинг книги
Миллионщик
3. Подкидыш
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Кодекс Охотника. Книга XXXV
35. Кодекс Охотника
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
#Бояръ-Аниме. Газлайтер. Том 36
36. История Телепата
Фантастика:
боевая фантастика
аниме
фэнтези
5.00
рейтинг книги
На границе империй. Том 10. Часть 6
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
Лекарь Империи 5
5. Лекарь Империи
Фантастика:
городское фэнтези
аниме
героическая фантастика
попаданцы
5.00
рейтинг книги
Печать мастера
6. Гибрид
Фантастика:
попаданцы
технофэнтези
аниме
фэнтези
6.00