SYNOPSIS
#include <time.h>
void tzset(void);
extern char *tzname[];
extern long int timezone;
extern int daylight;
DESCRIPTION
The
- The string set using the
_NutTzSet() function. - If no string has been set, the TZ environment variable.
- If $TZ is not set in the environment, the system default time zone settings.
As part of its processing, the
The
Format Rules for TZ
Two formats are supported for the TZ variable:
- STDoffset[DST[offset]][,dstrules]
-
STD is the name of the local standard time, offset is the value that one must add to local time to get the current UTC, and DST is the optional name for the local alternative time. An optional offset can be defined for DST; if none is given, then it is assumed to be an hour less than the STDoffset. The optional dstrules specify the dates and times of transition between standard time and daylight savings time for the process. If transition rules are not specified but DST is defined, then the current host settings for transition dates and times are applied.
The syntax for local time offset is
- [+|-][h]h[:mm[:ss]]
-
That is, an offset is expressed as a one or two digit hour amount, optionally preceded by a sign, and optionally followed by minutes and by seconds.
The syntax for dstrules is
start[/time],end[/time]
The value start specifies the local date at which daylight savings time begins, while the value end specifies the local date at which standard time is resumed. The optional times of transition have the same syntax as offsets, with the exception that they may not be signed. If present, transition times are in the current local time. Note in particular that the transition to standard time is specified as a daylight time.
Transition dates are in one of three formats:
- Jn
-
Julian day n (1 <= n <= 365), not allowing leap years. That is, J59 is always February 28 and J60 is always March 1st. It is impossible to explicitly refer to the occasional leap year.
- n
-
Julian day n (0 <= n <= 365), allowing leap years. For ngreater than 58, the month and day of the month that correspond to n depend upon whether or not the year is a leap year.
- Mm.w.d
-
Month m (January is 1), week w (1st is 1, 2nd is 2, last is 5) day of the week d (Sunday is 0). For example, M4.1.0 is the first Sunday in April, M10.5.2 is the last Tuesday in October.
- :string
-
The literal value of string is used to identify a time zone setting from the registry. If no key called string is in the registry, then time zone information is obtained from the current host settings.
PARAMETERS
None.
RETURN VALUES
None.
CONFORMANCE
UNIX 98, with exceptions.
MULTITHREAD SAFETY LEVEL
MT-Safe.
PORTING ISSUES
If the literal format for TZ variable is used, then the NuTCRACKER Platform gets the process' time zone settings from the registry. Time zone entries can be edited by use of the tzedit utility, which is part of the NT resource kit.
The setting format for TZ that the NuTCRACKER Platform recognizes is a
broader definition than that used by the Windows C runtime
library. Because of this, when mixing NuTCRACKER Platform and Win32
code (for example, an MFC-based GUI using a NuTCRACKER Platform DLL),
setting a NuTCRACKER Platform-format TZ in the environment can result in
the Windows native code failing to parse the time zone information.
To avoid a conflict in the environment, the
AVAILABILITY
PTC MKS Toolkit for Professional Developers
PTC MKS Toolkit for Professional Developers 64-Bit Edition
PTC MKS Toolkit for Enterprise Developers
PTC MKS Toolkit for Enterprise Developers 64-Bit Edition
SEE ALSO
- Functions:
_NutTzGet() ,_NutTzSet() ,asctime() ,asctime_r() ,ctime() ,ctime_r() ,localtime() ,localtime_r() ,mktime() ,strftime() ,wcsftime()
PTC MKS Toolkit 10.4 Documentation Build 39.