gmtime, _gmtime32, _gmtime64
Bir saat değerini bir yapıya dönüştürür.Bu işlevlerin daha güvenli sürümleri mevcuttur; bkz. gmtime_s, _gmtime32_s, _gmtime64_s.
struct tm *gmtime(
const time_t *timer
);
struct tm *_gmtime32(
const __time32_t *timer
);
struct tm *_gmtime64(
const __time64_t *timer
);
Parametreler
- timer
Depolanan zamana yönelik işaretçi.Saat, gece yarısından itibaren geçen saniye olarak gösterilir (00:00:00), Ocak 1, 1970, eşgüdümlü evrensel saat (UTC).
Dönüş Değeri
tmtürünün yapı işaretçisi.Geri döndürülen yapı alanları yerel zaman yerine UTC içerisindeki timer bağımsız değişkenini içerir.Her yapı alanı, aşağıdaki gibi int türündedir:
tm_sec
Dakikadan sonra saniye (0-59).tm_min
Saatten sonraki dakika sayısı (0 - 59).tm_hour
Gece yarısından itibaren saat (0 – 23).tm_mday
Ayın günü (1 – 31).tm_mon
Ay (0 - 11; Ocak = 0).tm_year
Yıl (mevcut yıl eksi 1900).tm_wday
Haftanın günü (0 – 6; Pazar = 0).tm_yday
Yılın günü (0 – 365; Ocak 1 = 0).tm_isdst
gmtime için her zaman 0.
gmtime, mktime, mkgmtime ve localtime 32-bit ve 64-bit sürümleri, dönüşüm için iş parçacığı başına tek bir ortak tm yapısını kullanır.Bu işlevlerden birine yapılan her bir çağrı, önceki çağrının sonuçlarını yok eder.timer 1 Ocak 1970 gece yarısından önce bir tarihi temsil ediyorsa, gmtimeNULL döndürür.Döndürülen hata yok.
__time64_t yapısını kullanan _gmtime64 23:59:59, 31 Aralık, 3000, UTC şeklinde ifade edilecek tarihleri etkinleştirirken, _gmtime32 tarihleri yalnızca 03:14:07 January 19, 2038, UTC şeklinde belirtir.1 Ocak 1970 gece yarısı her iki işlev için de tarih aralığının alt sınırdır.
gmtime, _gmtime64 olarak değerlendirilen bir satır içi işlevdir ve _USE_32BIT_TIME_T tanımlanmadığı sürece time_t değeri __time64_t değerine eşittir.Derleyiciyi time_t öğesini eski 32 bit time_t olarak yorumlamak üzere zorlamanız gerekirse _USE_32BIT_TIME_T öğesini tanımlayabilirsiniz; ancak bunun yapılması gmtime öğesinin _gmtime32 konumunda satır içi olmasına. time_t öğesinin de __time32_t olarak tanımlanmasına neden olur.64-bit platformlarda izin verilmediğinden bunun yapılmamasını öneririz ve 18 Ocak 2038 sonrasında uygulamanız her durumda çalışmayabilir.
Bu işlevler, kendi parametrelerini doğrular.timer geçersiz bir dosya işaretçisiyse veya zamanlayıcı değeri negatifse, bu işlevler Parametre Doğrulama bölümünde açıklandığı gibi geçersiz parametre işleyicisini çağırır.Yürütmenin devam etmesine izin verilirse, işlevler NULL döndürür ve errno öğesini EINVAL olarak ayarlar.
Notlar
_gmtime32 işlevi timer değerini parçalarına ayırır ve TIME.H içinde tanımlanmış, statik olarak belleğe alınan tm türündeki yapıda depolar.timer değeri, genellikle bir time işlev çağırmasından alınır.
[!NOT]
Çoğu durumda, hedef ortam günışığından yararlanmanın etkin olup olmadığını saptamaya çalışır.C çalışma zamanı kitaplığı, Gün Işığından Yararlanma Saati'nin (DST) hesaplanmasını uygulamak için ABD kurallarının kullanıldığını kabul eder.
Gereksinimler
Yordam |
Gerekli başlık |
---|---|
gmtime |
<time.h> |
_gmtime32 |
<time.h> |
_gmtime64 |
<time.h> |
Ek uyumluluk bilgileri için bkz. Uyumluluk.
Örnek
// crt_gmtime.c
// compile with: /W3
// This program uses _gmtime64 to convert a long-
// integer representation of coordinated universal time
// to a structure named newtime, then uses asctime to
// convert this structure to an output string.
#include <time.h>
#include <stdio.h>
int main( void )
{
struct tm *newtime;
__int64 ltime;
char buff[80];
_time64( <ime );
// Obtain coordinated universal time:
newtime = _gmtime64( <ime ); // C4996
// Note: _gmtime64 is deprecated; consider using _gmtime64_s
asctime_s( buff, sizeof(buff), newtime );
printf( "Coordinated universal time is %s\n", buff );
}
.NET Framework Eşdeğeri
Ayrıca bkz.
Başvuru
ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64
gmtime_s, _gmtime32_s, _gmtime64_s
localtime, _localtime32, _localtime64