f78
strftime
[flexible calendar time formatter]
SYNOPSIS #include <time.h> size_t strftime(char *s, size_t maxsize, const char *format, const struct tm *timp);
DESCRIPTION
strftime
converts a struct
tm
representation of the time (at timp)
into a string, starting at s
and occupying
no more than maxsize
characters.
You control the format of the output using the string at format. *format can contain two kinds of specifications: text to be copied literally into the formatted string, and time conversion specifications.
Time conversion specifications are two-character sequences beginning with % (use %% to include a percent sign in the output). Each defined conversion specification selects a field of calendar time data from *timp, and converts it to a string in one of the following ways.
%a |
An abbreviation for the
day of the week. |
%A |
The full name for the day
of the week. |
%b |
An abbreviation for the
month name. |
ffb
%B |
The full name of the month.
|
%c | A string representing the complete date and time, in the form: |
Mon Apr 01 13:13:13 1992
%d |
The day of the month, formatted
with two digits. |
%H |
The hour (on a 24-hour clock),
formatted with two digits. |
%I |
The hour (on a 12-hour clock),
formatted with two digits. |
%j |
The count of days in the
year, formatted with three digits (from 001
to 366).
|
%m |
The month number, formatted
with two digits. |
%M |
The minute, formatted with
two digits. |
%p |
Either AM
or PM
as appropriate. |
%S |
The second, formatted with
two digits. |
%U |
The week number, formatted
with two digits (from 00
to 53;
week number 1 is taken as beginning with the first Sunday in a year). See
also %W.
|
%w |
A single digit representing
the day of the week: Sunday is day 0.
|
%W ffb |
Another version of the week
number: like %U,
but counting week 1 as beginning with the first Monday in a year. |
%x | A string representing the complete date, in a format like the following example: |
Mon Apr 01 1992
%X | A string representing the full time of day (hours, minutes, and seconds), in a format like the following example: |
13:13:13
%y |
The last two digits of the
year. |
%Y |
The full year, formatted
with four digits to include the century. |
%Z |
Defined by ANSI C as eliciting
the time zone, if available; it is not available in this implementation
(which accepts %Z
but generates no output for it). |
%% |
A single character, %.
|
RETURNS
When the formatted time takes up no more than maxsize
characters, the result is the length
of the formatted string. Otherwise, if the formatting operation was abandoned
due to lack of room, the result is 0,
and the string starting at s
corresponds to just those parts of
*format
that could be completely filled in
within the maxsize
limit.
COMPLIANCE
ANSI C requires strftime,
although it does not specify the contents of *s
when the formatted
string would require more than
strftime requires no supporting OS subroutines.
0