_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 , __timeb32
veya __timeb64
yapısının _timeb
iş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 timeptr
işaret edilen yapıda depolar. _timeb
, __timeb32
ve __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_s
ve _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 timeptr
null 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 EINVAL
ayarlanı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