_tzset
Nastaví časové proměnné prostředí.
![]() |
---|
Toto rozhraní API nelze použít v aplikacích, které jsou spuštěny v systému Windows Runtime.Další informace naleznete v tématu CRT funkce nejsou podporovány s /ZW. |
void _tzset( void );
Poznámky
_tzset Využívá funkce aktuální nastavení proměnné prostředí TZ Chcete-li přiřadit hodnoty tři globální proměnné: _daylight, _timezone, a _tzname.Tyto proměnné jsou používány _ftime a localtime funkce provádět opravy z koordinovaný světový čas (UTC) na místní čas a tak time funkci vypočítat ze systémového času UTC.Pomocí následující syntaxe můžete nastavit TZ proměnné prostředí:
setTZ=tzn[+ | –]hh[:mm[:ss] ][dzn]
tzn
Název časového pásma třemi písmeny, například souborů PST.Je nutné zadat správný posun od místní čas na čas UTC.hh
Rozdíl v hodinách mezi místním časem a UTC.Znaménko (+) volitelné pro kladné hodnoty.mm
Minut.Odděleny od hh dvojtečkou (:).ss
Sekund.Odděleny od mm dvojtečkou (:).dzn
Dubna zóna třípísmennou například PDT.Nastavení letního času se nikdy ve skutečnosti ve TZ bez hodnoty pro dzn.Běhová knihovna C předpokládá Spojené státy prováděcí pravidla k výpočtu letního času (DST).
[!POZNÁMKA]
Opatrně computing znak časový rozdíl.Časový rozdíl je posun od místní čas na čas UTC (nikoli naopak), a proto může být znaménka opakem může intuitivně očekáváte.Časová pásma, před časem UTC je časový rozdíl negativní; pro ty za čas UTC je rozdíl kladný.
Chcete-li nastavit například TZ proměnné prostředí tak, aby odpovídal aktuální časové pásmo v Německu, zadejte na příkazovém řádku následující:
set TZ=GST-1GDT
Tento příkaz GST používá k označení německého standardního času, předpokládá, že UTC jednu hodinu za Německo (nebo jinými slovy, které Německo o hodinu před časem UTC) a předpokládá, že Německo dodržuje – letní čas.
Pokud TZ hodnota není nastavena, _tzset se pokusí použít informace o časovém pásmu, který je určen operačním systémem.V operačním systému Windows je tyto informace uvedené v žádosti datum a čas v Ovládacích panelech.Pokud _tzset nelze získat tyto informace používá PST8PDT ve výchozím nastavení, která znamená tichomořském časovém pásmu.
Na základě TZ hodnotu proměnné prostředí jsou následující hodnoty přiřazeny k globální proměnné _daylight, _timezone, a _tzname při _tzset se nazývá:
Globální proměnná |
Description |
Výchozí hodnota |
---|---|---|
_daylight |
Nenulová hodnota, jestliže se dubna zóny v TZ nastavení; jinak, 0. |
1 |
_timezone |
Rozdíl v sekundách mezi místním časem a UTC. |
28800 (28 800 sekund se rovná 8 hodin) |
_tzname[0] |
Hodnota název časového pásma z řetězec TZ proměnné prostředí; prázdný if TZ nebyl nastaven. |
PST |
_tzname[1] |
Hodnota řetězce letní uložení zóny; prázdný vynecháte letní uložení zóny z TZ proměnné prostředí. |
PDT |
Výchozí hodnoty, uvedené v předchozí tabulce pro _daylight a _tzname pole odpovídají "PST8PDT." Zóna letního času je-li vynechán z TZ proměnné prostředí, hodnota _daylight je 0 a _ftime, gmtime, a localtime funkce vrátí 0 pro jejich příznaky letního času.
Požadavky
Byla zahájena rutina |
Požadované záhlaví |
---|---|
_tzset |
<time.h> |
Další informace naleznete v tématu Compatibility.
Příklad
// 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 );
}
Ekvivalent v rozhraní .NET Framework
Nelze použít Volání funkce standardním C pomocí PInvoke. Další informace naleznete v tématu Platformu vyvolání příklady.