_strdate_s, _wstrdate_s

Geçerli sistem tarihini bir arabellek kopyalayın.Bu sürümleri şunlardır: _strdate, _wstrdate 'de açıklanan güvenlik yenilikleri ile CRT'deki Güvenlik Özellikleri.

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

Parametreler

  • [out] buffer
    Biçimlendirilmiş bir tarih dizesi ile doldurulacak bir arabellek için bir işaretçi.

  • [in] numberOfElements
    Arabelleğin boyutu.

Dönüş Değeri

Başarılı olursa sıfır.Bir hata varsa dönüş değeri bir hata kodudur.Hata kodları HATANO içinde tanımlanır.H; Bu işlev tarafından oluşturulan tam hatalar için aşağıdaki tabloya bakın.Hata kodları hakkında daha fazla bilgi için bkz: Hata No.

Hata Durumları

buffer

numberOfElements

Return

buffer içeriği

NULL

(herhangi biri)

EINVAL

Modifiye edilmemiş

Değil NULL (geçerli arabellek için işaret)

0

EINVAL

Modifiye edilmemiş

Değil NULL (geçerli arabellek için işaret)

0 < numberOfElements < 9

EINVAL

Boş dize

Değil NULL (geçerli arabellek için işaret)

numberOfElements >= 9

0

Geçerli tarih biçimli belirtildiği gibi açıklamalar

Güvenlik sorunları

Geçersiz içinde olmayan geçirerek NULL arabellek erişim ihlaline neden olur için değer numberOfElements parametre 9'dan büyük.

Boyut değerlerini geçirmeden boyutunun daha büyük buffer arabellek taşmasına neden olur.

Notlar

Bu işlevleri sağlayan daha güvenli sürümlerini _strdate ve _wstrdate._strdate_s İşlevi tarafından işaret arabellek geçerli sistem tarihini kopyalar buffer, biçimlendirilmiş mm/dd/yy, nerede mm olan iki basamağı ayı temsil eden dd günü gösteren iki basamak olur ve yy yılın son iki basamağını olur.Örneğin, dize 12/05/99 5 Aralık 1999 temsil eder.Arabellek en az 9 karakter uzunluğunda olmalıdır.

_wstrdate_sbir geniş karakter sürümü _strdate_s; YAZMAÇ değeri _wstrdate_s geniş karakter dizeleridir.Bu işlevler, aksi halde aynı şekilde davranır.

Varsa buffer olan bir NULL işaretçisi veya numberOfElements açıklandığı gibi geçersiz bir parametre işleyici çağrılır, 9'dan az karakter Parametre Doğrulama.Yürütülmesine devam etmek için izin verilirse, bu işlevler -1 döndürür ve errno için EINVAL arabellek ise NULL veya numberOfElements daha az veya eşit 0 ya da set errno için ERANGE , numberOfElements 9'dan az olan.

C++ dilinde bu işlevleri kullanmak şablon aşırı yüklemeleriyle basitleştirilmiştir; aşırı yüklemeler arabellek uzunluğunu otomatik olarak çıkarabilir (bir boyut bağımsız değişkeni belirtme gereksinimi ortadan kalkar) ve bunlar otomatik olarak eski ve güvenli olmayan işlevlerle daha yeni ve güvenli karşılıklarını değiştirir.Daha fazla bilgi için bkz. Güvenli Şablon Aşırı Yüklemeleri.

Olağan genel metin eşleme:

TCHAR.H yordamı

_UNICODE & _MBCS tanımlanmamış

_MBCS tanımlanmış

_UNICODE tanımlanmış

_tstrdate_s

_strdate_s

_strdate_s

_wstrdate_s

Gereksinimler

Yordam

Gerekli başlık

_strdate

<time.h>

_wstrdate

<time.h> veya <wchar.h>

_strdate_s

<time.h>

Örnek

Örnek için bkz: zaman.

.NET Framework Eşdeğeri

System::DateTime::Parse

Ayrıca bkz.

Başvuru

Zaman Yönetimi

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