_ftime_s, _ftime32_s, _ftime64_s
현재 시간을 가져옵니다. CRT의 보안 기능에 설명된 대로 보안 향상 기능이 포함된 _ftime, _ftime32, _ftime64 버전입니다.
errno_t _ftime_s(
struct _timeb *timeptr
);
errno_t _ftime32_s(
struct __timeb32 *timeptr
);
errno_t _ftime64_s(
struct __timeb64 *timeptr
);
매개 변수
- timeptr
_timeb,__timeb32 또는 __timeb64 구조체에 대한 포인터입니다.
반환 값
성공 시 0이고, 실패 시 오류 코드입니다. timeptr가 NULL인 경우 반환 값은 EINVAL입니다.
설명
_ftime_s 함수는 현재 현지 시간을 가져오고 timeptr*.* 으로 지정된 구조체에서 이것을 저장합니다. _timeb,__timeb32, 와__timeb64 구조체는 SYS\Timeb.h에서 정의됩니다. 그들은 다음 표에서 나열된 4개의 필드를 포함합니다.
dstflag
만약 현지에 섬머타임제가 적용된 경우 0이 아닙니다. (섬머타임제가 결정되는 방법의 대한 설명은 tzset 를 참조하세요.)millitm
초를 밀리초로 나눕니다.time
셰게 협정시(UTC), 1970년 1월 1일 자정(00:00:00)이후 시간입니다.timezone
UTC와 현지 시간 간에, westward 이동시간만큼 차이가 납니다. timezone 의 값은 _timezone 전역변수의 값으로 설정됩니다. ( _tzset을 참조)
_ftime64_s 는 __timeb64 구조체를 사용하고, UTC 3000년 12월 31일 23시 59분 59초까지 파일 생성날짜를 표현합니다; _ftime32_s 는 UTC 2038년 1월 19일 3시 14분 7초까지만 표현합니다. 1970년 1월 1일 자정은 모든 함수의 날짜 범위의 하한 값입니다.
_ftime_s 는 _ftime64_s 와 동일하고 _timeb 는 64비트 시간을 포함합니다. USE_32BIT_TIME_T 가 정의 되지 않는 한 이것은 사실입니다. 오랜 동작도 영향을 받습니다; _ftime_s 는 32비트 시간을 사용하고 _timeb 는 32비트 시간을 포함합니다.
_ftime_s 매개 변수의 유효성을 검사합니다. timeptr 이 null 포인터인 경우 매개 변수 유효성 검사에 설명된 대로 함수는 잘못된 매개 변수 처리기를 호출합니다. 계속해서 실행하도록 허용된 경우, 함수는 errno를 EINVAL로 설정합니다.
요구 사항
Function |
필수 헤더 |
---|---|
_ftime_s |
<sys/types.h> 및 <sys/timeb.h> |
_ftime32_s |
<sys/types.h> 및 <sys/timeb.h> |
_ftime64_s |
<sys/types.h> 및 <sys/timeb.h> |
호환성에 대한 자세한 내용은 소개 단원의 호환성 부분을 참조하십시오.
라이브러리
모든 버전의 C 런타임 라이브러리입니다.
예제
// 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] );
}
해당 .NET Framework 항목
참고 항목
참조
ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64