summaryrefslogtreecommitdiffstats
path: root/man3/strptime.3
diff options
context:
space:
mode:
Diffstat (limited to 'man3/strptime.3')
-rw-r--r--man3/strptime.3413
1 files changed, 0 insertions, 413 deletions
diff --git a/man3/strptime.3 b/man3/strptime.3
deleted file mode 100644
index 9ccccfd..0000000
--- a/man3/strptime.3
+++ /dev/null
@@ -1,413 +0,0 @@
-'\" t
-.\" Copyright 1993 Mitchum DSouza <m.dsouza@mrc-apu.cam.ac.uk>
-.\"
-.\" SPDX-License-Identifier: Linux-man-pages-copyleft
-.\"
-.\" Modified, jmv@lucifer.dorms.spbu.ru, 1999-11-08
-.\" Modified, aeb, 2000-04-07
-.\" Updated from glibc docs, C. Scott Ananian, 2001-08-25
-.\" Modified, aeb, 2001-08-31
-.\" Modified, wharms 2001-11-12, remark on white space and example
-.\"
-.TH strptime 3 2024-01-28 "Linux man-pages 6.7"
-.SH NAME
-strptime \- convert a string representation of time to a time tm structure
-.SH LIBRARY
-Standard C library
-.RI ( libc ", " \-lc )
-.SH SYNOPSIS
-.nf
-.BR "#define _XOPEN_SOURCE" " /* See feature_test_macros(7) */"
-.B #include <time.h>
-.P
-.BI "char *strptime(const char *restrict " s ", const char *restrict " format ,
-.BI " struct tm *restrict " tm );
-.fi
-.SH DESCRIPTION
-The
-.BR strptime ()
-function is the converse of
-.BR strftime (3);
-it converts the character string pointed to by
-.I s
-to values which are stored in the
-"broken-down time"
-structure pointed to by
-.IR tm ,
-using the format specified by
-.IR format .
-.P
-The broken-down time structure
-.I tm
-is described in
-.BR tm (3type).
-.P
-The
-.I format
-argument
-is a character string that consists of field descriptors and text characters,
-reminiscent of
-.BR scanf (3).
-Each field descriptor consists of a
-.B %
-character followed by another character that specifies the replacement
-for the field descriptor.
-All other characters in the
-.I format
-string must have a matching character in the input string,
-except for whitespace, which matches zero or more
-whitespace characters in the input string.
-There should be white\%space or other alphanumeric characters
-between any two field descriptors.
-.P
-The
-.BR strptime ()
-function processes the input string from left
-to right.
-Each of the three possible input elements (whitespace,
-literal, or format) are handled one after the other.
-If the input cannot be matched to the format string, the function stops.
-The remainder of the format and input strings are not processed.
-.P
-The supported input field descriptors are listed below.
-In case a text string (such as the name of a day of the week or a month name)
-is to be matched, the comparison is case insensitive.
-In case a number is to be matched, leading zeros are
-permitted but not required.
-.TP
-.B %%
-The
-.B %
-character.
-.TP
-.BR %a " or " %A
-The name of the day of the week according to the current locale,
-in abbreviated form or the full name.
-.TP
-.BR %b " or " %B " or " %h
-The month name according to the current locale,
-in abbreviated form or the full name.
-.TP
-.B %c
-The date and time representation for the current locale.
-.TP
-.B %C
-The century number (0\[en]99).
-.TP
-.BR %d " or " %e
-The day of month (1\[en]31).
-.TP
-.B %D
-Equivalent to
-.BR %m/%d/%y .
-(This is the American style date, very confusing
-to non-Americans, especially since
-.B %d/%m/%y
-is widely used in Europe.
-The ISO\~8601 standard format is
-.BR %Y\-%m\-%d .)
-.TP
-.B %H
-The hour (0\[en]23).
-.TP
-.B %I
-The hour on a 12-hour clock (1\[en]12).
-.TP
-.B %j
-The day number in the year (1\[en]366).
-.TP
-.B %m
-The month number (1\[en]12).
-.TP
-.B %M
-The minute (0\[en]59).
-.TP
-.B %n
-Arbitrary whitespace.
-.TP
-.B %p
-The locale's equivalent of AM or PM.
-(Note: there may be none.)
-.TP
-.B %r
-The 12-hour clock time (using the locale's AM or PM).
-In the POSIX locale equivalent to
-.BR "%I:%M:%S %p" .
-If
-.I t_fmt_ampm
-is empty in the
-.B LC_TIME
-part of the current locale,
-then the behavior is undefined.
-.TP
-.B %R
-Equivalent to
-.BR %H:%M .
-.TP
-.B %S
-The second (0\[en]60; 60 may occur for leap seconds;
-earlier also 61 was allowed).
-.TP
-.B %t
-Arbitrary whitespace.
-.TP
-.B %T
-Equivalent to
-.BR %H:%M:%S .
-.TP
-.B %U
-The week number with Sunday the first day of the week (0\[en]53).
-The first Sunday of January is the first day of week 1.
-.TP
-.B %w
-The ordinal number of the day of the week (0\[en]6), with Sunday = 0.
-.TP
-.B %W
-The week number with Monday the first day of the week (0\[en]53).
-The first Monday of January is the first day of week 1.
-.TP
-.B %x
-The date, using the locale's date format.
-.TP
-.B %X
-The time, using the locale's time format.
-.TP
-.B %y
-The year within century (0\[en]99).
-When a century is not otherwise specified, values in the range 69\[en]99 refer
-to years in the twentieth century (1969\[en]1999); values in the
-range 00\[en]68 refer to years in the twenty-first century (2000\[en]2068).
-.TP
-.B %Y
-The year, including century (for example, 1991).
-.P
-Some field descriptors can be modified by the E or O modifier characters
-to indicate that an alternative format or specification should be used.
-If the
-alternative format or specification does not exist in the current locale, the
-unmodified field descriptor is used.
-.P
-The E modifier specifies that the input string may contain
-alternative locale-dependent versions of the date and time representation:
-.TP
-.B %Ec
-The locale's alternative date and time representation.
-.TP
-.B %EC
-The name of the base year (period) in the locale's alternative representation.
-.TP
-.B %Ex
-The locale's alternative date representation.
-.TP
-.B %EX
-The locale's alternative time representation.
-.TP
-.B %Ey
-The offset from
-.B %EC
-(year only) in the locale's alternative representation.
-.TP
-.B %EY
-The full alternative year representation.
-.P
-The O modifier specifies that the numerical input may be in an
-alternative locale-dependent format:
-.TP
-.BR %Od " or " %Oe
-The day of the month using the locale's alternative numeric symbols;
-leading zeros are permitted but not required.
-.TP
-.B %OH
-The hour (24-hour clock) using the locale's alternative numeric symbols.
-.TP
-.B %OI
-The hour (12-hour clock) using the locale's alternative numeric symbols.
-.TP
-.B %Om
-The month using the locale's alternative numeric symbols.
-.TP
-.B %OM
-The minutes using the locale's alternative numeric symbols.
-.TP
-.B %OS
-The seconds using the locale's alternative numeric symbols.
-.TP
-.B %OU
-The week number of the year (Sunday as the first day of the week)
-using the locale's alternative numeric symbols.
-.TP
-.B %Ow
-The ordinal number of the day of the week (Sunday=0),
-using the locale's alternative numeric symbols.
-.TP
-.B %OW
-The week number of the year (Monday as the first day of the week)
-using the locale's alternative numeric symbols.
-.TP
-.B %Oy
-The year (offset from
-.BR %C )
-using the locale's alternative numeric symbols.
-.SH RETURN VALUE
-The return value of the function is a pointer to the first character
-not processed in this function call.
-In case the input string
-contains more characters than required by the format string, the return
-value points right after the last consumed input character.
-In case the whole input string is consumed,
-the return value points to the null byte at the end of the string.
-If
-.BR strptime ()
-fails to match all
-of the format string and therefore an error occurred, the function
-returns NULL.
-.SH ATTRIBUTES
-For an explanation of the terms used in this section, see
-.BR attributes (7).
-.TS
-allbox;
-lbx lb lb
-l l l.
-Interface Attribute Value
-T{
-.na
-.nh
-.BR strptime ()
-T} Thread safety MT-Safe env locale
-.TE
-.SH STANDARDS
-POSIX.1-2008.
-.SH HISTORY
-POSIX.1-2001, SUSv2.
-.SH NOTES
-In principle, this function does not initialize
-.I tm
-but
-stores only the values specified.
-This means that
-.I tm
-should be initialized before the call.
-Details differ a bit between different UNIX systems.
-The glibc implementation does not touch those fields which are not
-explicitly specified, except that it recomputes the
-.I tm_wday
-and
-.I tm_yday
-field if any of the year, month, or day elements changed.
-.\" .P
-.\" This function is available since libc 4.6.8.
-.\" Linux libc4 and libc5 includes define the prototype unconditionally;
-.\" glibc2 includes provide a prototype only when
-.\" .B _XOPEN_SOURCE
-.\" or
-.\" .B _GNU_SOURCE
-.\" are defined.
-.\" .P
-.\" Before libc 5.4.13 whitespace
-.\" (and the \[aq]n\[aq] and \[aq]t\[aq] specifications) was not handled,
-.\" no \[aq]E\[aq] and \[aq]O\[aq] locale modifier characters were accepted,
-.\" and the \[aq]C\[aq] specification was a synonym for the \[aq]c\[aq] specification.
-.P
-The \[aq]y\[aq] (year in century) specification is taken to specify a year
-.\" in the 20th century by libc4 and libc5.
-.\" It is taken to be a year
-in the range 1950\[en]2049 by glibc 2.0.
-It is taken to be a year in
-1969\[en]2068 since glibc 2.1.
-.\" In libc4 and libc5 the code for %I is broken (fixed in glibc;
-.\" %OI was fixed in glibc 2.2.4).
-.SS glibc notes
-For reasons of symmetry, glibc tries to support for
-.BR strptime ()
-the same format characters as for
-.BR strftime (3).
-(In most cases, the corresponding fields are parsed, but no field in
-.I tm
-is changed.)
-This leads to
-.TP
-.B %F
-Equivalent to
-.BR %Y\-%m\-%d ,
-the ISO\~8601 date format.
-.TP
-.B %g
-The year corresponding to the ISO week number, but without the century
-(0\[en]99).
-.TP
-.B %G
-The year corresponding to the ISO week number.
-(For example, 1991.)
-.TP
-.B %u
-The day of the week as a decimal number (1\[en]7, where Monday = 1).
-.TP
-.B %V
-The ISO\~8601:1988 week number as a decimal number (1\[en]53).
-If the week (starting on Monday) containing 1 January has four or more days
-in the new year, then it is considered week 1.
-Otherwise, it is the last week
-of the previous year, and the next week is week 1.
-.TP
-.B %z
-An RFC-822/ISO\~8601 standard timezone specification.
-.TP
-.B %Z
-The timezone name.
-.P
-Similarly, because of GNU extensions to
-.BR strftime (3),
-.B %k
-is accepted as a synonym for
-.BR %H ,
-and
-.B %l
-should be accepted
-as a synonym for
-.BR %I ,
-and
-.B %P
-is accepted as a synonym for
-.BR %p .
-Finally
-.TP
-.B %s
-The number of seconds since the Epoch, 1970-01-01 00:00:00 +0000 (UTC).
-Leap seconds are not counted unless leap second support is available.
-.P
-The glibc implementation does not require whitespace between
-two field descriptors.
-.SH EXAMPLES
-The following example demonstrates the use of
-.BR strptime ()
-and
-.BR strftime (3).
-.P
-.\" SRC BEGIN (strptime.c)
-.EX
-#define _XOPEN_SOURCE
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-\&
-int
-main(void)
-{
- struct tm tm;
- char buf[255];
-\&
- memset(&tm, 0, sizeof(tm));
- strptime("2001\-11\-12 18:31:01", "%Y\-%m\-%d %H:%M:%S", &tm);
- strftime(buf, sizeof(buf), "%d %b %Y %H:%M", &tm);
- puts(buf);
- exit(EXIT_SUCCESS);
-}
-.EE
-.\" SRC END
-.SH SEE ALSO
-.BR time (2),
-.BR getdate (3),
-.BR scanf (3),
-.BR setlocale (3),
-.BR strftime (3)