Aracılığıyla paylaş


ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s

Bir zaman değeri bir string öğesine dönüştürmeniz ve yerel saat dilimi ayarlarını yapabilirsiniz.Bunlar sürümleridir ctime, _ctime64, _wctime, _wctime64 açıklandığı gibi güvenlik geliştirmeleri ile crt güvenlik özellikleri.

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

Parametreler

  • [Çıkış]buffer
    26 Karakter tutacak büyüklükte olmalıdır.Karakter dize sonucunu gösteren bir işaretçi veya NULLise:

    • timegece yarısı, 1 Ocak 1970, utc önceki bir tarihi temsil eder.

    • Kullanırsanız, _ctime32_s veya _wctime32_s ve time 03: 14: 07 19 Ocak 2038 tarihi temsil eder.

    • Kullanırsanız, _ctime64_s veya _wctime64_s ve time 23: 59: 59, 31 Aralık 3000 utc tarihi temsil eder.

    • Kullanırsanız, _ctime_s veya _wctime_s, bu işlevler önceki işlevleri sarıcıları.Açıklamalar bölümüne bakın.

  • [in]numberOfElements
    Arabellek boyutu.

  • t [in]ime
    Saklı bir süre için işaretçi.

Dönüş Değeri

Başarılı olursa sıfır.Geçersiz bir parametre bir hata varsa, geçersiz parametre işleyicisi, açıklandığı şekilde çağrılır Parametre doğrulama.Yürütülmesine devam etmek için izin, bir hata kodu döndürülür.Hata kodları HATANO tanımlanır.H; Bu hataların listesi için bkz: errno.Her hata durumu için atılan gerçek hata kodları aşağıdaki tabloda gösterilmiştir.

Hata koşulları

buffer

numberOfElements

time

Return

İçindeki değerbuffer

NULL

herhangi bir

herhangi bir

EINVAL

Modifiye edilmemiş

Değil NULL (noktaları için geçerli bellek)

0

herhangi bir

EINVAL

Modifiye edilmemiş

DeğilNULL

0 < Boyut < 26

herhangi bir

EINVAL

Boş dize

DeğilNULL

> = 26

NULL

EINVAL

Boş dize

DeğilNULL

> = 26

< 0

EINVAL

Boş dize

Notlar

ctime_s İşlevi olarak depolanan bir zaman değeri dönüştürür bir time_t yapısı içinde bir karakter dizesi.time Değer bir çağrıya elde genellikle zaman, gece yarısından itibaren saniye cinsinden geçen hangi verir (00: 00), 1 Ocak 1970'den itibaren Eşgüdümlü Evrensel Saat (utc).Dönüş değeri dize tam olarak 26 karakter içerir ve formu vardır:

Wed Jan 02 02:03:55 1980\n\0

24 Saatlik zaman biçimi kullanılır.Tüm alanları bir sabit genişliğe sahip olur.Yeni satır karakteri ('\n') ve boş karakter ('\0') dizenin son iki pozisyon kaplar.

Dönüştürülen karakter dizesi de yerel saat dilimi ayarlara göre ayarlanır.Bkz: time, _ftime, ve localtime32_s yerel saat yapılandırma hakkında daha fazla bilgi için İşlevler ve _tzset işlev genel değişkenleri ve saat dilimi ortamı tanımlama hakkında daha fazla bilgi için.

_wctime32_sve _wctime64_s geniş karakter sürümü olan _ctime32_s ve _ctime64_s; geniş karakter dizesi için bir işaretçi döndürülüyor.Otherwise, _ctime64_s, _wctime32_s, and _wctime64_s behave identically to _ctime32_s.

ctime_sdeğerlendiren bir satır içi işlevi _ctime64_s ve time_t eşdeğeri olan __time64_t.Yorumlamak için derleyici zorlamak gerekirse time_t eski 32-bit olarak time_t, sizin tanımladığınız _USE_32BIT_TIME_T.Bunu neden olur ctime_s için değerlendirmek için _ctime32_s.Bu, uygulamanızı 18 Ocak 2038 sonra başarısız olabilir ve 64-bit platformlarda izin verilmez çünkü önerilmez.

C++'da, bu işlevler tarafından şablon aşırı kolaylaştırılmıştır; aşırı arabellek uzunluğu otomatik olarak size baðýmsýz deðiþkeni belirtmek için gereksiz gerçekleştirip.Daha fazla bilgi için bkz. Güvenli şablon aşırı yükleme.

Genel metin yordamı eşlemeleri

TCHAR.H yordamına girildi

_UNICODE & _mbcs tanımlı değil

Tanımlanan _mbcs

Tanımlanan _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

Gereksinimler

Yordamı

Gerekli başlık

ctime_s,

_ctime32_s,

_ctime64_s

<time.h>

_wctime_s,

_wctime32_s,

_wctime64_s

<time.h> veya <wchar.h>

Ek uyumluluk bilgileri için bkz: Uyumluluk giriş.

Kitaplıkları

Tüm sürümleri c çalışma zamanı kitaplıkları.

Örnek

// 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( &ltime );

  
   err = _wctime_s( buf, SIZE, &ltime );
   if (err != 0)
   {
      printf("Invalid Arguments for _wctime_s. Error Code: %d\n", err);
   }
   wprintf_s( L"The time is %s\n", buf );
}

Örnek Çıktı

The time is Fri Apr 25 13:03:39 2003

.NET Framework Eşdeğeri

Ayrıca bkz.

Başvuru

Zaman Yönetimi

asctime_s, _wasctime_s

ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64

_ftime, _ftime32, _ftime64

gmtime_s, _gmtime32_s, _gmtime64_s

localtime_s, _localtime32_s, _localtime64_s

time, _time32, _time64