_ftime_s, _ftime32_s, _ftime64_s

Geçerli saati alır. Bu işlevler, CRT'deki Güvenlik özellikleri bölümünde açıklandığı gibi güvenlik geliştirmeleri içeren , _ftime32_ftime64 sürümleridir._ftime

Sözdizimi

errno_t _ftime_s( struct _timeb *timeptr );
errno_t _ftime32_s( struct __timeb32 *timeptr );
errno_t _ftime64_s( struct __timeb64 *timeptr );

Parametreler

timeptr
bir , __timeb32veya __timeb64 yapısının _timebişaretçisi.

Dönüş değeri

Başarılı olursa sıfır, hata durumunda bir hata kodu. ise timeptr NULL, dönüş değeri olur EINVAL.

Açıklamalar

_ftime_s işlevi geçerli yerel saati alır ve tarafından timeptrişaret edilen yapıda depolar. _timeb, __timeb32ve __timeb64 yapıları SYS\Timeb.h içinde tanımlanır. Bunlar, aşağıdaki tabloda listelenen dört alan içerir.

Alan Açıklama
dstflag Yerel saat dilimi için gün ışığından yararlanma saati geçerliyse sıfır olmayan. (Gün ışığından yararlanma saatinin nasıl belirlendiğinin açıklaması için bkz _tzset .)
millitm Milisaniye cinsinden bir saniyenin kesri.
time Gece yarısından bu yana saniye olarak süre (00:00:00), 1 Ocak 1970, eşgüdümlü evrensel saat (UTC).
timezone Utc ile yerel saat arasında dakika cinsinden, batıya doğru hareket eden fark. değeri timezone , genel değişkenin _timezone değerinden ayarlanır (bkz _tzset. ).

_ftime64_s Yapısını kullanan __timeb64 işlev, dosya oluşturma tarihlerinin 23:59:59, 31 Aralık 3000, UTC'ye kadar ifade edilmesini sağlar; ancak _ftime32_s yalnızca 18 Ocak 2038, UTC ile 23:59:59 tarihleri temsil eder. 1 Ocak 1970 gece yarısı, tüm bu işlevlerin tarih aralığının alt sınırıdır.

_ftime_s işlevi ile eşdeğerdir _ftime64_sve _timeb tanımlanmadığı sürece _USE_32BIT_TIME_T 64 bit bir süre içerir; bu durumda eski davranış geçerli olur; _ftime_s 32 bit zaman kullanır ve _timeb 32 bit zaman içerir.

_ftime_s parametrelerini doğrular. olarak timeptrnull işaretçi geçirilirse, işlev Parametre doğrulama bölümünde açıklandığı gibi geçersiz parametre işleyicisini çağırır. Yürütmenin devam etmesi için izin verilirse, işlevi olarak EINVALayarlanırerrno.

Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.

Gereksinimler

İşlev Gerekli başlık
_ftime_s <sys/types.h> ve <sys/timeb.h>
_ftime32_s <sys/types.h> ve <sys/timeb.h>
_ftime64_s <sys/types.h> ve <sys/timeb.h>

Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.

Kitaplıklar

C çalışma zamanı kitaplıklarının tüm sürümleri.

Örnek

// crt_ftime64_s.c
// This program uses _ftime64_s to obtain the current
// time and then stores this time in timebuffer.

#include <stdio.h>
#include <sys/timeb.h>
#include <time.h>

int main( void )
{
   struct _timeb timebuffer;
   char timeline[26];
   errno_t err;
   time_t time1;
   unsigned short millitm1;
   short timezone1;
   short dstflag1;

   _ftime64_s( &timebuffer );

    time1 = timebuffer.time;
    millitm1 = timebuffer.millitm;
    timezone1 = timebuffer.timezone;
    dstflag1 = timebuffer.dstflag;

   printf( "Seconds since midnight, January 1, 1970 (UTC): %I64d\n",
   time1);
   printf( "Milliseconds: %d\n", millitm1);
   printf( "Minutes between UTC and local time: %d\n", timezone1);
   printf( "Daylight savings time flag (1 means Daylight time is in "
           "effect): %d\n", dstflag1);

   err = ctime_s( timeline, 26, & ( timebuffer.time ) );
   if (err)
   {
       printf("Invalid argument to ctime_s. ");
   }
   printf( "The time is %.19s.%hu %s", timeline, timebuffer.millitm,
           &timeline[20] );
}
Seconds since midnight, January 1, 1970 (UTC): 1051553334
Milliseconds: 230
Minutes between UTC and local time: 480
Daylight savings time flag (1 means Daylight time is in effect): 1
The time is Mon Apr 28 11:08:54.230 2003

Ayrıca bkz.

Zaman yönetimi
asctime, _wasctime
ctime, _ctime32, _ctime64, , _wctime, _wctime32, _wctime64
gmtime, _gmtime32, _gmtime64
localtime, _localtime32, _localtime64
time, _time32, _time64