ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s
시간 값을 문자열로 변환 하 고 현지 표준 시간대 설정을 조정 합니다.이러한 버전의 있습니다 ctime, _ctime64, _wctime, _wctime64 와 보안 기능 향상에 설명 된 대로 CRT의 보안 기능.
errno_t ctime_s(
char* buffer,
size_t numberOfElements,
const time_t *time
);
errno_t _ctime32_s(
char* buffer,
size_t numberOfElements,
const __time32_t *time
);
errno_t _ctime64_s(
char* buffer,
size_t numberOfElements,
const __time64_t *time )
;
errno_t _wctime_s(
wchar_t* buffer,
size_t numberOfElements,
const time_t *time
);
errno_t _wctime32_s(
wchar_t* buffer,
size_t numberOfElements,
const __time32_t *time
);
errno_t _wctime64_s(
wchar_t* buffer,
size_t numberOfElements,
const __time64_t *time
);
template <size_t size>
errno_t _ctime32_s(
char (&buffer)[size],
const __time32_t *time
); // C++ only
template <size_t size>
errno_t _ctime64_s(
char (&buffer)[size],
const __time64_t *time
); // C++ only
template <size_t size>
errno_t _wctime32_s(
wchar_t (&buffer)[size],
const __time32_t *time
); // C++ only
template <size_t size>
errno_t _wctime64_s(
wchar_t (&buffer)[size],
const __time64_t *time
); // C++ only
매개 변수
[out]buffer
26 문자를 저장할 수 있어야 합니다.문자 문자열 결과에 대 한 포인터 또는 NULL경우:timeUTC 1970 년 1 월 1 일 자정 이전 날짜를 나타냅니다.
사용 하는 경우 _ctime32_s 또는 _wctime32_s 및 time 03시 14분: 07 2038 1 월 19 일 후의 날짜를 나타냅니다.
사용 하는 경우 _ctime64_s 또는 _wctime64_s 및 time 후 23시 59분: 59, 3000, 12 월 31 UTC 날짜를 나타냅니다.
사용 하는 경우 _ctime_s 또는 _wctime_s, 이전 함수 래퍼이 함수입니다.설명 부분을 참조하십시오.
[in] numberOfElements
버퍼의 크기입니다.[in] time
저장 된 시간에 대 한 포인터입니다.
반환 값
성공 하는 경우에 0입니다.잘못 된 매개 때문에 오류가 있으면 잘못 된 매개 변수 처리기를의 설명에 따라 호출 됩니다 매개 변수 유효성 검사.실행을 계속 하려면 허용 되지 않으면 오류 코드가 반환 됩니다.ERRNO의 오류 코드를 정의 합니다.H. 이러한 오류에 대 한 목록을 참조 하십시오. errno.각 오류 조건에 대 한 발생 한 실제 오류 코드는 다음 표에 나와 있습니다.
오류 조건
buffer |
numberOfElements |
time |
Return |
값buffer |
---|---|---|---|---|
NULL |
모든 |
모든 |
EINVAL |
수정 되지 않음 |
않은 NULL (올바른 메모리를 가리키는) |
0 |
모든 |
EINVAL |
수정 되지 않음 |
없습니다NULL |
0 < 크기 < 26 |
모든 |
EINVAL |
빈 문자열 |
없습니다NULL |
> = 26 |
NULL |
EINVAL |
빈 문자열 |
없습니다NULL |
> = 26 |
< 0 |
EINVAL |
빈 문자열 |
설명
ctime_s 함수 변환으로 저장 된 시간 값은 time_t 구조체에는 문자열입니다.time 값에서 일반적으로에 대 한 호출에서 얻은 시간, 반환 초 자정 이후 경과 된 시간 (00: 00: 00), 1970 년 1 월 1 일 협정 세계시 (UTC)입니다.반환 값 문자열 정확히 26 자과 양식이 있습니다.
Wed Jan 02 02:03:55 1980\n\0
24 시간 형식을 사용 합니다.하면 모든 필드에 있습니다.새 줄 문자 ('\n') 및 null 문자 ('\ 0')는 문자열의 마지막 두 개의 위치를 차지합니다.
변환 된 문자열은 현지 표준 시간대 설정에 따라 수도 조정 됩니다.참조는 time, _ftime, 및 localtime32_s 함수는 현지 시간을 구성 하는 방법에 대 한 정보를 하는 _tzset 함수에 대 한 표준 시간대 환경 및 전역 변수를 정의 하는 방법에 대 한 정보입니다.
_wctime32_s및 _wctime64_s 의 와이드 문자 버전입니다 _ctime32_s 및 _ctime64_s. 와이드 문자열에 대 한 포인터를 반환합니다.Otherwise, _ctime64_s, _wctime32_s, and _wctime64_s behave identically to _ctime32_s.
ctime_s산출 하는 인라인 함수 이며 _ctime64_s 및 time_t 입니다 __time64_t.해석 하도록 컴파일러를 강제 하는 경우 time_t 로 이전 32 비트 time_t를 정의할 수 있습니다 _USE_32BIT_TIME_T.그러면 이렇게 하면 ctime_s 평가 _ctime32_s.2038 년 1 월 18 일 이후 응용 프로그램이 실패 하 고 64 비트 플랫폼에서 사용할 수 없습니다 때문에 권장 되지 않습니다.
C + +에서이 함수를 사용 하 여 템플릿 오버 로드에 단순화 됩니다. 오버 버퍼 길이 size 인수를 지정 하지 않아도 자동으로 유추할 수 있습니다.자세한 내용은 보안 템플릿 오버 로드를 참조하십시오.
일반 텍스트 루틴 매핑
TCHAR입니다.H 루틴 |
_UNICODE 및 _Mbcs가 정의 되지 않았습니다. |
_Mbcs가 정의 |
_Unicode가 정의 |
---|---|---|---|
_tctime_s |
ctime_s |
ctime_s |
_wctime_s |
_tctime32_s |
_ctime32_s |
_ctime32_s |
_wctime32_s |
_tctime64_s |
_ctime64_s |
_ctime64_s |
_wctime64_s |
요구 사항
루틴 |
필수 헤더 |
---|---|
ctime_s, _ctime32_s, _ctime64_s |
<time.h> |
_wctime_s, _wctime32_s, _wctime64_s |
<time.h> 또는 <wchar.h> |
추가 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.
라이브러리
모든 버전의 C 런타임 라이브러리.
예제
// crt_wctime_s.c
/* This program gets the current
* time in time_t form and then uses _wctime_s to
* display the time in string form.
*/
#include <time.h>
#include <stdio.h>
#define SIZE 26
int main( void )
{
time_t ltime;
wchar_t buf[SIZE];
errno_t err;
time( <ime );
err = _wctime_s( buf, SIZE, <ime );
if (err != 0)
{
printf("Invalid Arguments for _wctime_s. Error Code: %d\n", err);
}
wprintf_s( L"The time is %s\n", buf );
}
샘플 출력
The time is Fri Apr 25 13:03:39 2003
해당 .NET Framework 항목
참고 항목
참조
ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64
gmtime_s, _gmtime32_s, _gmtime64_s