Compartir a través de


_tzset

Variables de entorno de tiempo de los conjuntos.

Nota importanteImportante

Esta API no se puede utilizar en las aplicaciones que se ejecutan en tiempo de ejecución de Windows.Para obtener más información, vea Funciones CRT no compatibles con /ZW.

void _tzset( void );

Comentarios

La función de _tzset usa la configuración actual de la variable de entorno TZ para asignar valores a tres variables globales: _daylight, _timezone, y _tzname.Estas variables se utilizan en _ftime y localtime funciona para ajustar a partir de la hora universal coordinada (UTC) en hora local, y por la función de time en hora UTC de cálculo a partir de la hora del sistema.Utilice la sintaxis siguiente para establecer la variable de entorno TZ:

setTZ=tzn[+ | –]hh[:mm[:ss] ][dzn]

  • tzn
    Nombre de la zona horaria de la Tres- letra, como PST.Debe especificar el desplazamiento correcto a partir de la hora local en hora UTC.

  • hh
    Diferencia en horas entre la hora utc y la hora local.Firme (+) opcional para valores positivos.

  • mm
    Minutos.Independiente de hh por dos puntos (:).

  • ss
    Segundos.Independiente de mm por dos puntos (:).

  • dzn
    Zona del horario de verano de la Tres- letra como PDT.Si el horario de verano nunca está vigente en su lugar, establezca TZ sin un valor para dzn.La biblioteca en tiempo de ejecución de C supone las reglas de los Estados Unidos para implementar el cálculo de tiempo de guardar de luz (DST).

[!NOTA]

Tenga cuidado en calcular el diferencia de tiempo.Dado que la diferencia de hora es el diferencia respecto a la hora local en hora UTC (en lugar del inverso), el signo puede ser el contrario de lo que es posible que intuitivamente esperar.Para las zonas horarias delante UTC, la diferencia de hora es negativa; para los detrás de la hora UTC, la diferencia es positivo.

Por ejemplo, para establecer la variable de entorno TZ que corresponda a la zona horaria actual en Alemania, escriba lo siguiente en la línea de comandos:

set TZ=GST-1GDT

Este comando utiliza GST para indicar hora estándar alemán, supone que la hora UTC es una hora subyacente Alemania (o es decir esa Alemania es una hora delante UTC), y se supone que Alemania observa horario de verano.

Si el valor de TZ no está establecida, _tzset intenta utilizar la información de zona horaria especificada por el sistema operativo.En el sistema operativo Windows, esta información se especifica en la aplicación de fecha y hora en Panel de control.Si _tzset no puede obtener esta información, utiliza PST8PDT de forma predeterminada, lo que significa que la zona horaria del Pacífico.

Según el valor de variable de entorno TZ, los valores siguientes se asignan a variables globales _daylight, _timezone, y _tzname cuando se llama a _tzset:

Variable global

Descripción

Valor predeterminado

_daylight

Valor distinto de cero si una zona de horario de verano se especifica en la configuración de TZ; de lo contrario, 0.

1

_timezone

Diferencia en segundos entre la hora local y el horario UTC.

28800 (28800 iguales de segundos 8 horas)

_tzname[0]

Valor de cadena del nombre de la zona horaria de la variable del entorno de TZ; vacío si TZ no se ha establecido.

PST

_tzname[1]

Valor de cadena de la zona de horario de verano; vacío si la zona de horario de verano se omite de la variable del entorno de TZ.

PDT

Los valores predeterminados mostrados en la tabla anterior para _daylight y la matriz de _tzname corresponden a “PST8PDT.” Si la zona de DST se omite de la variable del entorno de TZ, el valor de _daylight es 0 y _ftime, gmtime, y devuelven 0 de las funciones de localtime para su DST marca.

Requisitos

Rutina

Encabezado necesario

_tzset

<time.h>

Para obtener más información, vea Compatibilidad.

Ejemplo

// crt_tzset.cpp
// This program uses _tzset to set the global variables
// named _daylight, _timezone, and _tzname. Since TZ is
// not being explicitly set, it uses the system time.

#include <time.h>
#include <stdlib.h>
#include <stdio.h>

int main( void )
{
    _tzset();
    int daylight;
    _get_daylight( &daylight );
    printf( "_daylight = %d\n", daylight );
    long timezone;
    _get_timezone( &timezone );
    printf( "_timezone = %ld\n", timezone );
    size_t s;
    char tzname[100];
    _get_tzname( &s, tzname, sizeof(tzname), 0 );
    printf( "_tzname[0] = %s\n", tzname );
    exit( 0 );
}
  

Equivalente en .NET Framework

No es aplicable Para llamar a la función estándar de C, utilice PInvoke. Para obtener más información, vea La invocación de plataforma ejemplos.

Vea también

Referencia

Administración de tiempo

asctime, _wasctime

_ftime, _ftime32, _ftime64

gmtime, _gmtime32, _gmtime64

localtime, _localtime32, _localtime64

time, _time32, _time64

_utime, _utime32 _utime64, _wutime, _wutime32, _wutime64