_tzset
Conjuntos de variáveis de ambiente de time.
void _tzset( void );
Comentários
The _tzset função usará a configuração corrente da variável de ambiente TZ Para atribuir valores a três variáveis global: _daylight, _timezone, e _tzname. Essas variáveis são usadas pelo _ftime and localTime funções para fazer as correções do horário de universal coordenado (UTC) para a time local e, a time função para calcular UTC da time do sistema. Use a seguinte sintaxe para conjunto o TZ variável de ambiente:
setTZ=tzn[+ | –]hh[:mm[:ss] ][dzn]
tzn
Três letras time-nome de zona, sistema autônomo PST.Você deve especificar o deslocamento de correto a partir do local time em UTC.hh
Diferença em horas entre o UTC e a time local.Sinal (+) opcional para valores positivos.mm
Minutos. Separadoshh por uma (dois-pontos:).ss
Segundos. Separadosmm por uma (dois-pontos:).dzn
Horário de verão de três letras - Salvar-fuso horário sistema autônomo PDT.Se verão time nunca está em vigor na localidade, conjunto TZ sem um valor para dzn. A biblioteca de time de execução C assume as regras dos Estados Unidos para implementar o cálculo do horário de verão (DST).
Observação: |
---|
Tome cuidado na computação o sinal da diferença de time.Como a diferença de time é o deslocamento a partir do horário local para UTC (em vez de vice-versa), seu sinal pode ser o oposto do que você intuitivamente pode esperar.Zonas de time antes do UTC, a diferença de time for negativa; para aqueles atrás UTC, a diferença é positiva. |
Por exemplo, para conjunto o TZ variável de ambiente para corresponder à corrente fuso horário na Alemanha, digite o seguinte na linha de comando:
set TZ=GST-1GDT
Esse comando usa o GST para indicar o time padrão alemão, assume que o UTC é uma time por trás da Alemanha (ou em outras palavras, o que Alemanha é uma time à frente da UTC) e presume que Alemanha observa o horário de verão-.
Se o TZ o valor não é conjunto, _tzset tenta usar as informações de fuso horário especificadas pelo sistema operacional. No sistema operacional Windows, essa informação é especificada no aplicativo de data/time no painel de controle.If _tzset não é possível obter essas informações, ele usa PST8PDT por padrão, o que significa o Pacífico fuso horário.
Baseia o TZ valor de variável de ambiente, os seguintes valores são atribuídos a variáveis global _daylight, _timezone, e _tzname Quando _tzset é chamado:
Variável global |
Descrição |
Valor padrão |
---|---|---|
_daylight |
Valor diferente de zero se um horário de verão - salvar-time zona é especificada em TZ configuração; caso contrário, 0. |
1 |
_timezone |
Diferença em segundos entre a time local e a UTC. |
28800 (28800 segundos é igual a 8 horas) |
_tzname[0] |
Valor de tempo-string zona nome de TZ variável de ambiente; se vazia TZ não foi definido. |
PST |
_tzname[1] |
Valor de time de verão-zona de seqüência de caracteres; vazio se o fuso horário de verão-é omitido da TZ variável de ambiente. |
PDT |
Os valores padrão mostrados na tabela anterior para _daylight e o _tznamematriz correspondem aos "PST8PDT." Se o fuso horário de verão é omitido do TZ variável de ambiente, o valor de _daylight é 0 e o _ftime, gmtime, e localtime as funções retornam 0 para seus sinalizadores do 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 );
}
_daylight = 1 _timezone = 28800 _tzname[0] = Pacific Standard Time
Equivalente do NET Framework
Não aplicável. Para telefonar a função C padrão, use PInvoke. Para obter mais informações, consulte Exemplos de invocação de plataforma.