Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ strptime(3C) — DG/UX R4.11

Media Vault

Software Library

Restoration Projects

Artifacts Sought



strptime(3C)                      SDK R4.11                     strptime(3C)


NAME
       strptime - date and time conversion

SYNOPSIS
       #include <time.h>
       char *strptime(const char *buf, const char *format, struct tm *tm);

DESCRIPTION
       strptime converts the character string pointed to by buf to values
       stored in the structure pointed to by tm, using the format specified
       by format.

       format is composed of zero or more directives where each directive is
       composed of one of the following:

              one or more white-space characters as specified by the isspace
              function,

              an ordinary character (neither % or non white-space
              character), or

              a conversion specification.

   Conversion Specifications
       Each conversion specification is composed of a % character followed
       by an optional modifier and then by a conversion character which
       specifies the replacement required.  Usually, there should be white-
       space or other non-alphanumeric characters between any two conversion
       specifications.  The following conversion specifications are
       supported:

       %a     locale's full or abbreviated weekday name
       %A     same as %a
       %b     locale's full or abbreviated month name
       %B     same as %b
       %c     locale's appropriate date and time representation (for
              example, %x %X)
       %C     number of the century (00 - 99), leading zeros are optional
       %d     day of month ( 01 - 31 ), leading zeros are optional
       %D     date as %m/%d/%y
       %e     same as %d
       %h     same as %b
       %H     hour ( 00 - 23 ), leading zeros are optional
       %I     hour ( 01 - 12 ), leading zeros are optional
       %j     day number of year ( 001 - 366 ), leading zeros are optional
       %m     month number ( 01 - 12 ), leading zeros are optional
       %M     minute ( 00 - 59 ), leading zeros are optional
       %N     date and time
       %n     any white space
       %p     locale's equivalent of either AM or PM
       %r     locale's time with 12-hour clock
       %R     time as %H:%M
       %S     seconds ( 00 - 61 ), allows for leap seconds, leading zeros
              are optional
       %t     any white space
       %T     time as %H:%M:%S
       %U     week number of year ( 00 - 53 ), Sunday is the first day of
              week 1, leading zeros are optional
       %w     weekday number ( 0 - 6 ), Sunday = 0, leading zeros are
              optional
       %W     week number of year ( 00 - 53 ), Monday is the first day of
              week 1, leading zeros are optional
       %x     locale's appropriate date representation
       %X     locale's appropriate time representation
       %y     year within century ( 00 - 99 ), leading zeros are optional
       %Y     year as ccyy (for example, 1986)
       %%     same as %


   Modified Conversion Specifiers
       Some directives can be modified by the O and E modifier characters to
       indicate that an alternative format or specification should be used
       instead of the normal directives.  %O is the modifier used in
       association with the following conversion specifiers to specify that
       the locale's alternative digits be matched.  The second letter has a
       similar effect as the letter excluding the O modifier.

       %Od  the day of the month, using the locale's alternative digit
            symbols filled as needed with leading zeros if available,
            otherwise, filled with spaces.
       %Oe  same as %Od
       %OH  the hour (24 hour clock), using the locale's alternative digit
            symbols.
       %OI  the hour (12 hour clock), using the locale's alternative digit
            symbols.
       %Om  the month using the locale's alternative digit symbols.
       %OM  the minutes using the locale's alternative digit symbols.
       %OS  the seconds using the locale's alternative digit symbols.
       %OU  the week number using the locale's alternative digit symbols
            (see rules for %U).
       %Ow  the weekday as a number using the locale's alternative digit
            symbols (Sunday = 0).
       %OW  the week number using the locale's alternative digit symbols
            (see rules for %W).
       %Oy  the year (offset from %C) using the locale's alternative digit
            symbols.

       %E is a modifier used to match the date using different era
       information as specified in the LCTIME locale data file.

       %Ec  the locale's alternative representation for date and time.
       %EC  the locale's alternative representation for the name of the base
            year (period).
       %Ex  the locale's alternative representation for the date.
       %EX  the locale's alternative representation for the time.
       %Ey  the offset from %EC in the locale's alternative representation
            (year only).
       %EY  the full alternative year representation.


       A directive comprised of white-space characters is executed by
       scanning input up to the first character that is not white space
       which remains unscanned, or until no more characters can be scanned.

       A directive that is an ordinary character is executed by scanning the
       next character from the buffer.  If the character scanned from the
       buffer differs from the one comprising the directive, the directive
       fails, and the differing and subsequent characters remain unscanned.

       A series of directives composed of %n, %t, white-space characters or
       any combination is executed by scanning up to the first character
       that is not white space which remains unscanned, or until no more
       characters can be scanned.

       Any other conversion specification is executed by scanning characters
       until a character matching the next directive is scanned, or until no
       more characters can be scanned.  These characters, except the one
       matching the next directive, are then compared to the locale values
       associated with the conversion specifier.  If a match is found,
       values for the appropriate tm structure members are set to values
       corresponding to the locale information.  Case is ignored when
       matching items are in buf such as month or weekday names.  If no
       match is found, strptime fails and no more characters are scanned.

   Return Values
       Upon successful completion, strptime returns a pointer to the
       character following the last character parsed.  Otherwise, it returns
       a null pointer.  If not implemented, strptime returns a null pointer
       and and sets errno to ENOSYS.

USAGE
       Several ``same as'' format and the special processing of white-space
       characters are provided in order to ease the use of identical format
       strings for strftime and strptime.

REFERENCES
       strftime(3C)


Licensed material--property of copyright holder(s)

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026