다음을 통해 공유


_strdate_s, _wstrdate_s

현재 시스템 날짜를 버퍼에 복사 합니다.이러한 버전의 있습니다 _strdate, _wstrdate 와 보안 기능 향상에 설명 된 대로 CRT의 보안 기능.

errno_t _strdate_s(
   char *buffer,
   size_t numberOfElements
);
errno_t _wstrdate_s(
   wchar_t *buffer,
   size_t numberOfElements
);
template <size_t size>
errno_t _strdate_s(
   char (&buffer)[size]
); // C++ only
template <size_t size>
errno_t _wstrdate_s(
   wchar_t (&buffer)[size]
); // C++ only

매개 변수

  • [out] buffer
    날짜 서식이 지정 된 문자열에 입력 됩니다 버퍼에 대 한 포인터입니다.

  • [in] numberOfElements
    버퍼의 크기입니다.

반환 값

성공 하는 경우에 0입니다.실패 하면 반환 값은 오류 코드입니다.ERRNO의 오류 코드를 정의 합니다.H. 이 함수에 의해 생성 되는 정확한 오류 아래 표를 참조 하십시오.오류 코드에 대 한 자세한 내용은 errno.

오류 조건

buffer

numberOfElements

Return

내용buffer

NULL

(모든)

EINVAL

수정 되지 않음

않은 NULL (잘못 버퍼를 가리키는)

0

EINVAL

수정 되지 않음

않은 NULL (잘못 버퍼를 가리키는)

0 < numberOfElements< 9

EINVAL

빈 문자열

않은 NULL (잘못 버퍼를 가리키는)

numberOfElements> = 9

0

설명에 지정 된 대로 현재 날짜 포맷

보안 문제

잘못 된 비 전달 NULL 경우 버퍼에 액세스 위반이 발생 합니다에 대 한 값을 numberOfElements 매개 변수는 9 보다 큰 합니다.

실제 크기 보다 큰 크기 값을 전달 하는 것은 buffer 에서 버퍼 오버런이 발생 합니다.

설명

이러한 함수를 더 안전한 버전을 제공 _strdate 및 _wstrdate._strdate_s 함수 포인터가 가리키는 버퍼에 현재 시스템 날짜를 복사 buffer포맷 된 mm/dd/yy여기서 mm 는 두 자리 수의 월을 나타내는 dd 해당 날짜를 나타내는 두 자리 숫자입니다 및 yy 연도의 마지막 두 자리 숫자입니다.예를 들어, 12/05/99 1999 년 12 월 5 일을 나타냅니다.버퍼 적어도 9 자 여야 합니다.

_wstrdate_s와이드 문자 버전입니다 _strdate_s. 인수와 반환 값을 _wstrdate_s 와이드 문자 문자열입니다.이러한 함수는 동일 하 게 그렇지 않으면 동작합니다.

경우 buffer 되는 NULL 포인터를 경우 numberOfElements 보다 작은 9 자, 설명에 따라 잘못 된 매개 변수 처리기가 호출 매개 변수 유효성 검사.이 함수 실행을 계속 수 있으면-1을 반환 합니다. 설정 errno 에 EINVAL 버퍼 경우 NULL 또는 numberOfElements 가 보다 작거나 0, 또는 집합 errno 에 ERANGE 경우 numberOfElements 9 미만입니다.

C + +에서이 함수를 사용 하 여 템플릿 오버 로드에 단순화 됩니다. 오버 로드에서 버퍼 길이가 자동으로 유추할 수 있습니다 (size 인수를 지정할 필요가 없습니다) 및 해당 보안에서 이미지와 이전, 안전 하지 않은 함수가 자동으로 바꿀 수 있습니다.자세한 내용은 보안 템플릿 오버 로드를 참조하십시오.

일반 텍스트 루틴 매핑:

TCHAR입니다.H 루틴

_UNICODE 및 _Mbcs가 정의 되지 않았습니다.

_Mbcs가 정의

_Unicode가 정의

_tstrdate_s

_strdate_s

_strdate_s

_wstrdate_s

요구 사항

루틴

필수 헤더

_strdate

<time.h>

_wstrdate

<time.h> 또는 <wchar.h>

_strdate_s

<time.h>

예제

예제를 보려면 시간.

해당 .NET Framework 항목

System::DateTime::Parse

참고 항목

참조

시간 관리

asctime_s, _wasctime_s

ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s

gmtime_s, _gmtime32_s, _gmtime64_s

localtime_s, _localtime32_s, _localtime64_s

mktime, _mktime32, _mktime64

time, _time32, _time64

_tzset