_tzset

Variáveis de ambiente de tempo dos conjuntos.

Observação importanteImportante

Este API não pode ser usado em aplicativos executados em Tempo de Execução do Windows.Para obter mais informações, consulte Funções de CRT não suportadas com /ZW.

void _tzset( void );

Comentários

A função de _tzset usa a configuração atual da variável de ambiente TZ para atribuir valores a três variáveis globais: _daylight, _timezone, e _tzname.Essas variáveis são usados por funções de _ftime e de localtime para fazer correções de tempo universais de coordenadas (UTC) para hora local, e a função de time calcular o UTC de tempo do sistema.Use a seguinte sintaxe para definir a variável de ambiente de TZ :

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

  • tzn
    Nome do fuso horário de três letras, como PST.Você deve especificar o deslocamento de tempo local correto para UTC.

  • hh
    Diferença entre o UTC em horas e hora local.Assinar (+) opcional para valores positivos.

  • mm
    Minutos.Separado de hh por dois-pontos (:).

  • ss
    Segundos.Separado de mm por dois-pontos (:).

  • dzn
    Zona de horário de verão de três letras como PDT.Se o horário de verão nunca é aplicado na localidade, defina TZ sem um valor para dzn.A biblioteca em tempo de execução de C pressupõe as regras dos Estados Unidos para implementar o cálculo do horário de verão (DST).

ObservaçãoObservação

Leva em calcular o sinal da diferença de tempo.Como a diferença de tempo é o deslocamento do UTC para hora local (em vez do inverso), seu sinal pode ser o oposto do que você pode esperar intuitiva.Para fusos horários antes do UTC, a diferença de tempo é negativo; para esses code-behind do UTC, a diferença é positivo.

Por exemplo, para definir a variável de ambiente de TZ para corresponder ao fuso horário atual na Alemanha, digite o seguinte na linha de comando:

set TZ=GST-1GDT

Este comando usa GST para indicar horário padrão, alemão pressupõe que o UTC é uma hora de apoio Alemanha (ou é a Alemanha é uma hora do UTC) antes, e que pressupõe que a Alemanha observa o horário de verão.

Se o valor de TZ não é definido, o _tzset tentar usar informações de zona de tempo especificada pelo sistema operacional.No sistema operacional Windows, essa informação é especificada no aplicativo de data/hora no painel de controle.Se _tzset não pode obter esta informação, usa PST8PDT por padrão, o que significa a zona de tempo do pacífico.

Com base no valor da variável de ambiente TZ , os seguintes valores são atribuídos a variáveis globais _daylight, _timezone, e _tzname quando _tzset é chamado:

Variável global

Descrição

Valor padrão

_daylight

Valor diferente de zero se uma zona de horário de verão é especificada na definição de TZ ; caso contrário, 0.

1

_timezone

No segundo diferença entre o UTC e o horário local.

28800 (28800 segundo é igual a 8 horas)

_tzname[0]

Valor de cadeia de caracteres do nome do fuso horário da variável de ambiente de TZ ; vazia se TZ não foi definido.

PST

_tzname[1]

Valor de cadeia de caracteres da zona de horário de verão; vazia se a zona de horário de verão é omitida da variável de ambiente de TZ .

PDT

Os valores padrão mostrados na tabela anterior para _daylight e a matriz de _tzname correspondem a PST8PDT “.” Se a zona de DST é omitida da variável de ambiente de TZ , o valor de _daylight é 0 e _ftime, gmtime, e funções de localtime retornam 0 para os sinalizadores de DST.

Requisitos

Rotina

Cabeçalho necessário

_tzset

<time.h>

Para obter mais informações, consulte Compatibilidade.

Exemplo

// 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 );
}
  

Equivalência do .NET Framework

Não aplicável. Para chamar a função padrão de C, use PInvoke. Para obter mais informações, consulte Exemplos de invocação de plataforma.

Consulte também

Referência

Gerenciamento de tempo

asctime, _wasctime

_ftime, _ftime32, _ftime64

gmtime, _gmtime32, _gmtime64

localTime, _localtime32, _localtime64

tempo, _time32, _time64

_utime, _utime32 _utime64, _wutime, _wutime32, _wutime64