logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface

Application Usage

       Since  the  ctime(),  localtime(),  mktime(),  strftime(), and strftime_l() functions are required to set
       timezone information as if by calling tzset(), there is no need for an explicit tzset() call before using
       these functions. However, portable applications should call tzset() explicitly before using ctime_r()  or
       localtime_r() because setting timezone information is optional for those functions.

Description

       The  tzset()  function  shall  use  the  value  of  the  environment  variable  TZ to set time conversion
       information used  by  ctime(),  localtime(),  mktime(),  and  strftime().   If  TZ  is  absent  from  the
       environment, implementation-defined default timezone information shall be used.

       The tzset() function shall set the external variable tzname as follows:

           tzname[0] = "std";
           tzname[1] = "dst";

       where std and dst are as described in the Base Definitions volume of POSIX.1‐2017, Chapter8, EnvironmentVariables.

       The  tzset()  function  also  shall  set  the  external  variable  daylight to 0 if Daylight Savings Time
       conversions should never be applied for the timezone in use; otherwise, non-zero. The  external  variable
       timezone  shall  be set to the difference, in seconds, between Coordinated Universal Time (UTC) and local
       standard time.

       If a thread accesses tzname, daylight, or timezone directly while another thread is in a call to tzset(),
       or to any function that is required or allowed to set timezone information as if by calling tzset(),  the
       behavior is undefined.

Errors

       No errors are defined.

       Thefollowingsectionsareinformative.

Examples

       Example TZ variables and their timezone differences are given in the table below:
                                             ┌────────────┬────────────┐
                                             │     TZtimezone  │
                                             ├────────────┼────────────┤
                                             │ EST5EDT    │ 5*60*60    │
                                             │ GMT0       │ 0*60*60    │
                                             │ JST-9      │ -9*60*60   │
                                             │ MET-1MEST  │ -1*60*60   │
                                             │ MST7MDT    │ 7*60*60    │
                                             │ PST8PDT    │ 8*60*60    │
                                             └────────────┴────────────┘

Future Directions

       None.

Name

       daylight, timezone, tzname, tzset — set timezone conversion information

Prolog

       This  manual  page  is part of the POSIX Programmer's Manual.  The Linux implementation of this interface
       may differ (consult the corresponding Linux manual page for details of Linux behavior), or the  interface
       may not be implemented on Linux.

Rationale

       None.

Return Value

       The tzset() function shall not return a value.

See Also

ctime(), localtime(), mktime(), strftime()

       The Base Definitions volume of POSIX.1‐2017, Chapter8, EnvironmentVariables, <time.h>

Synopsis

       #include <time.h>

       extern int daylight;
       extern long timezone;
       extern char *tzname[2];
       void tzset(void);

return

See Also