Aracılığıyla paylaş


localtime, _localtime32, _localtime64

Bir zaman değeri dönüştürmek ve yerel saat dilimini düzeltin.Bu işlevler daha güvenli sürümlerinin kullanılabilir olduğunu; see localtime_s, _localtime32_s, _localtime64_s.

struct tm *localtime(
   const time_t *timer 
);
struct tm *_localtime32(
   const __time32_t *timer
);
struct tm *_localtime64(
   const __time64_t *timer 
);

Parametreler

  • timer
    Saklı bir süre için işaretçi.

Dönüş Değeri

Yapısı sonucu bir işaretçi döndürür veya NULL tarihi işlevine geçirilen ise:

  • Gece yarısından önce Ocak 1, 1970.

  • 03: 14: 07, 19 Ocak 2038 utc sonra (kullanarak _time32 ve time32_t).

  • 23: 59: 59, 31 Aralık 3000 utc sonra (kullanarak _time64 ve __time64_t).

_localtime64, kullanan __time64_t yapısı, 23: 59: 59 ile 31 Aralık 3000 Eşgüdümlü Evrensel Saat (utc) yukarı ifade tarihleri sağlarken _localtime32 03: 14: 07 19 Ocak 2038 utc aracılığıyla tarihleri temsil eder.

localtimedeğerlendiren bir satır içi işlevi _localtime64, ve time_t eşdeğeri olan __time64_t.Yorumlamak için derleyici zorlamak gerekirse time_teski 32-bit olarak time_t, sizin tanımladığınız _USE_32BIT_TIME_T.Bunu neden olur localtime için değerlendirmek için _localtime32.Bu, uygulamanızı 19 Ocak 2038 sonra başarısız olabilir ve 64-bit platformlarda izin verilmez çünkü önerilmez.

Yapý türü alanlarının tm her biri, aşağıdaki değerler saklayan bir int:

  • tm_sec
    Saniye sonra dakika (0-59).

  • tm_min
    Saat dakika (0-59).

  • tm_hour
    Gece yarısından sonra saat (0-23).

  • tm_mday
    (1 – 31) Ayın günü.

  • tm_mon
    Ay (0 – 11; Ocak = 0).

  • tm_year
    Yıl (geçerli yıl 1900 eksi).

  • tm_wday
    Haftanın günü (0 – 6; Pazar = 0).

  • tm_yday
    Yılın günü (0 – 365; Ocak 1 = 0).

  • tm_isdst
    Gün ışığından yararlanma saatine etkinse, pozitif değer; 0 gün ışığından yararlanma saatine etkili değildir; gün ışığından yararlanma saatine durumu bilinmeyen ise negatif değer.TZ Ortam değişkeni ayarlanır, c çalışma zamanı kitaplığı kuralları Amerika Birleşik Devletleri için uygun gün ışığından yararlanma – saati (dst) hesaplama gerçekleştirmek için varsayar.

Notlar

localtime İşlevi olarak depolanan bir süre dönüştürür bir time_t değer ve sonuç türü yapısında saklar tm.long Değeri timer geçen gece yarısından itibaren saniye temsil eder (00: 00), 1 Ocak 1970'den itibaren utc.Bu değer genellikle elde time işlevi.

32-Bit ve 64-bit sürümleri, gmtime, mktime, mkgmtime, ve localtime tüm kullanmak tek bir tm dönüştürme için iş parçacığı başına yapısı.Bu yordamlar için her arama sonucu önceki çağrı bozar.

localtimeKullanıcı ilk kez genel ortam değişkenini ayarlar, yerel saat dilimini düzeltir TZ.Zaman TZ ayarlanır, üç diğer ortam değişkenlerini (_timezone, _daylight, ve _tzname) otomatik olarak ayarlanır.TZ Değişkeni ayarlanmamış, localtime Denetim Masası'ndaki Tarih/Saat uygulamasında belirtilen saat dilimi bilgilerini kullanmayı dener.Bu bilgileri alınamıyor, Pasifik saat dilimini belirten, PST8PDT, varsayılan olarak kullanılır.Bkz: _tzset bu değişkenlerin bir açıklaması.TZMicrosoft uzantısı ve ANSI standart tanımının parçası olan localtime.

[!NOT]

Hedef ortam ışığından yürürlükte olup olmadığını belirlemek denemelisiniz.

Bu işlevler, kendi parametreleri doğrulayın.timer Bir null işaretçi veya süreölçer değeri negatif ise, bu işlevler bir geçersiz parametre işleyicisi açıklandığı şekilde harekete Parametre doğrulama.İşlevler dönüş yürütülmesine devam etmek için izin verilip verilmediğini, NULL ve errno için EINVAL.

Gereksinimler

Yordamı

Gerekli başlık

localtime

<time.h>

_localtime32

<time.h>

_localtime64

<time.h>

Ek uyumluluk bilgileri için bkz: Uyumluluk giriş.

Örnek

// crt_localtime.cpp
// compile with: /W3
/* This program uses _time64 to get the current time 
 * and then uses localtime64() to convert this time to a structure 
 * representing the local time. The program converts the result 
 * from a 24-hour clock to a 12-hour clock and determines the 
 * proper extension (AM or PM).
 */

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

int main( void )
{
        struct tm *newtime;
        char am_pm[] = "AM";
        __time64_t long_time;

        _time64( &long_time );           // Get time as 64-bit integer.
                                         // Convert to local time.
        newtime = _localtime64( &long_time ); // C4996
        // Note: _localtime64 deprecated; consider _localetime64_s

        if( newtime->tm_hour > 12 )        // Set up extension.
                strcpy_s( am_pm, sizeof(am_pm), "PM" );
        if( newtime->tm_hour > 12 )        // Convert from 24-hour
                newtime->tm_hour -= 12;    //   to 12-hour clock.
        if( newtime->tm_hour == 0 )        // Set hour to 12 if midnight.
                newtime->tm_hour = 12;

        char buff[30];
        asctime_s( buff, sizeof(buff), newtime );
        printf( "%.19s %s\n", buff, am_pm );
}
  

.NET Framework Eşdeğeri

System::DateTime::ToLocalTime

Ayrıca bkz.

Başvuru

Zaman Yönetimi

asctime, _wasctime

ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64

_ftime, _ftime32, _ftime64

gmtime, _gmtime32, _gmtime64

localtime_s, _localtime32_s, _localtime64_s

time, _time32, _time64

_tzset